+ Merge branch 'master' into branch-1.8
+
+commit 39023ed6e29103a85bfad505506fa0dbf4dc1112
+Author: Bdale Garbee <bdale@gag.com>
+Date: Sun Mar 18 15:42:48 2018 -0600
+
+ doc: update copyright year in doc/altusmetrum-docinfo.xml
+
+commit 84146083da782c335ba7f040b238c3f51ba2f484
+Merge: ee79a205 78e5ae58
+Author: Bdale Garbee <bdale@gag.com>
+Date: Sun Mar 18 15:33:44 2018 -0600
+
+ Merge branch 'master' of ssh://git.gag.com/scm/git/fw/altos
+
+commit 78e5ae58c2ad5ba7246a649c0bd15ff68b5d0e74
+Author: Keith Packard <keithp@keithp.com>
+Date: Sat Mar 17 11:26:29 2018 -0700
+
+ Bump version to 1.8.5
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 529c04026dec55d9d0922689e56f1d23b0ff6095
+Author: Keith Packard <keithp@keithp.com>
+Date: Sat Mar 17 11:25:00 2018 -0700
+
+ doc: Add release notes for 1.8.5
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit bd0021d431165a6c896a6022691a447e27fd555e
+Author: Keith Packard <keithp@keithp.com>
+Date: Fri Mar 16 14:54:04 2018 -0700
+
+ altos/stmf0: Add some common definitions for flash loaders
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 4894d965d73231b5c74810d826c7c97fa1bd7803
+Author: Keith Packard <keithp@keithp.com>
+Date: Fri Mar 16 14:53:14 2018 -0700
+
+ altos: Make panic beeps use fixed frequencies
+
+ This ensures that the beeps will work even before the configuration
+ has been loaded.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 1ea6188a9c78ab0642001110cac6c3b35e8ccc88
+Author: Keith Packard <keithp@keithp.com>
+Date: Fri Mar 16 14:52:09 2018 -0700
+
+ ao-usbload: Flip product names in loader error message
+
+ I was reversing the 'target' vs 'image' names in the error message,
+ leading to a bit of confusion.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 788d02a3caf0f14f3c84ff6ae7e2a2fff302e91b
+Author: Keith Packard <keithp@keithp.com>
+Date: Fri Mar 16 14:51:22 2018 -0700
+
+ ao-bringup: Check for Loader USB id before attempting dfu-util
+
+ This lets me restart the turnon process after the boot loader has been
+ flashed.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 7068149704e6de67ece670227445e987421cd600
+Author: Keith Packard <keithp@keithp.com>
+Date: Fri Mar 16 14:50:29 2018 -0700
+
+ chaoskey: Create unified ROM image with both loader and app
+
+ Flash the whole thing all at once to reduce the number of steps during
+ turnon.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 46d8197bb80ce3fe4cdc7b36c3be211366093bd5
+Author: Keith Packard <keithp@keithp.com>
+Date: Fri Mar 16 14:49:04 2018 -0700
+
+ ao-bringup: Don't wait for user when testing EasyMini igniters
+
+ I always have the LEDs ready to go before starting the turnon process.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit ee79a205e118ea8730a02cc327d8fb79cc5f74ff
+Merge: 365eee3e 78a90fc7
+Author: Bdale Garbee <bdale@gag.com>
+Date: Mon Feb 12 16:38:57 2018 -0700
+
+ Merge branch 'master' of ssh://git.gag.com/scm/git/fw/altos
+
+commit 78a90fc760b88ab66c5c238289afc38356e29d8a
+Author: Keith Packard <keithp@keithp.com>
+Date: Mon Feb 12 15:36:12 2018 -0800
+
+ Add TeleGPS v2.0 binaries to distribution
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 54e8e033ccf47526e5ff08f93c105ef75334924e
+Author: Keith Packard <keithp@keithp.com>
+Date: Sat Jan 13 21:29:08 2018 -0800
+
+ libaltos: Use case-insensitive compare when matching BT MACs
+
+ We use the BT MAC vendor portion to figure out which port to connect
+ to as that is simpler and takes less network traffic than actually
+ doing discovery. However, on Windows, we were generating the address
+ in lower case and comparing against upper case vendors, which didn't
+ work out too well.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit b95db5819885da89504d5e11decfda98cfac37aa
+Author: Keith Packard <keithp@keithp.com>
+Date: Fri Jan 12 22:27:41 2018 -0800
+
+ altoslib/altosuilib: Validate rom image is for target device
+
+ This should avoid mis-programming devices with incorrect firmware.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit f26cc1a677f577da533425a15485fcaa24626b23
+Author: Keith Packard <keithp@keithp.com>
+Date: Wed Jan 10 23:11:40 2018 -0800
+
+ altos/scheme: Move ao-scheme to a separate repository
+
+ This way it can be incorporated into multiple operating systems more easily.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 4b52fc6eea9a478cb3dd42dcd32c92838df39734
+Author: Keith Packard <keithp@keithp.com>
+Date: Mon Jan 8 13:46:17 2018 -0800
+
+ altos/scheme: Allow unicode in lexer
+
+ This just passes any bytes with the high bit set through the system so
+ programs can include UTF-8 in strings and symbols. What the heck.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit f8a967959b2f5ca3486ab3422f30fe4ad4ba17a8
+Author: Keith Packard <keithp@keithp.com>
+Date: Sun Jan 7 23:06:51 2018 -0800
+
+ altos/lambdakey-v1.0: Add LED function back in
+
+ We've made things smaller, so there's (barely) space for this now.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 6ae22601bbf018193ac093fb0f745ebe213bfb64
+Author: Keith Packard <keithp@keithp.com>
+Date: Sun Jan 7 23:06:22 2018 -0800
+
+ altos/scheme: remove debug code from vector write
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit bf37c22c6cdd4a90117bdc809e5c063a079082ad
+Author: Keith Packard <keithp@keithp.com>
+Date: Sun Jan 7 23:05:02 2018 -0800
+
+ altos/scheme: Allow individual lisp keywords to be feature-conditional
+
+ This lets us build a smaller lisp that is just missing some aliases
+ for existing functionality to save rom space.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 283553f0f118cef1dbcfbf5e86a43575a610d27f
+Author: Keith Packard <keithp@keithp.com>
+Date: Sun Jan 7 23:04:22 2018 -0800
+
+ altos/scheme: Split tests out from build sources
+
+ Run tests on both tiny and full scheme test programs.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 48d164e3d4b2ef27fae20fae63b8014803a7b178
+Author: Keith Packard <keithp@keithp.com>
+Date: Sun Jan 7 21:44:39 2018 -0800
+
+ altos/stmf0: Use double buffering for ChaosKey
+
+ This improves the USB performance of ChaosKey so that it doesn't NAK
+ during data transfers at all.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit db7f7c6c7f956058250b8057c6c27284f6f22e53
+Author: Keith Packard <keithp@keithp.com>
+Date: Sun Jan 7 21:43:22 2018 -0800
+
+ ao-chaosread: add --raw and --cooked flags
+
+ Allow reading from the cooked endpoint as well as the raw one.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 8545ed42bd29152f4937fb6457aba5fbd57e7691
+Author: Keith Packard <keithp@keithp.com>
+Date: Sun Jan 7 17:43:42 2018 -0800
+
+ altos/stmf0: use double buffering for USB rx data
+
+ This also allows us to stop shadowing USB rx buffers in system ram
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 42072f591690b8258d957ab7a9b2f5d911676b39
+Author: Keith Packard <keithp@keithp.com>
+Date: Sun Jan 7 12:43:13 2018 -0800
+
+ altos/stmf0: Use double buffering for USB tx data
+
+ This shouldn't have much of an effect, but shows how double buffering
+ works.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit eead259673c6594d41cfab796c8674c8bf1863cc
+Author: Keith Packard <keithp@keithp.com>
+Date: Sun Jan 7 11:51:07 2018 -0800
+
+ altos/stmf0: Stop shadowing USB tx buffers in system RAM
+
+ Use the 16-bit USB memory directly, avoiding the buffer space and the copy
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit ee62272bec67b5784a4ee4e12d8a59677bf9d112
+Author: Keith Packard <keithp@keithp.com>
+Date: Sun Jan 7 11:49:09 2018 -0800
+
+ altos/stmf0: Remove packet counters from non-debug build
+
+ These counters are only useful for helping debug the USB driver.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 043c5b56ffc2d8171769f6e988eaad6e457bad89
+Author: Keith Packard <keithp@keithp.com>
+Date: Sun Jan 7 11:47:57 2018 -0800
+
+ altos/kernel: Use ao_put_string for syntax error message
+
+ Avoid using puts, which can be a large library function.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit b446d9657cad0ff45f6f65c774d82cb9f2f65088
+Author: Keith Packard <keithp@keithp.com>
+Date: Sat Jan 6 18:11:19 2018 -0800
+
+ altos/lambdakey-v1.0: Switch back to command buffered input
+
+ Instead of just reading from stdin with no echo or editing.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 16061947d4376b41e596d87f97ec53ec29d17644
+Author: Keith Packard <keithp@keithp.com>
+Date: Sat Jan 6 17:29:10 2018 -0800
+
+ altos/scheme: Add ports. Split scheme code up.
+
+ And lots of other changes, including freeing unreferenced atoms.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 39df849f0717d92a7d5bdf8aa5904bd4db1b467f
+Author: Keith Packard <keithp@keithp.com>
+Date: Sat Jan 6 17:21:45 2018 -0800
+
+ altos/scheme: add 'install' target to install both test and tiny test
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 0d9a3e0378f84ffc8447747150066eae33cd3229
+Author: Keith Packard <keithp@keithp.com>
+Date: Thu Jan 4 02:28:13 2018 -0800
+
+ altos/scheme: Add vector and string funcs. Test everybody.
+
+ Add a bunch of string and vector functions from r7rs. I think most
+ everything is here now.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit d34f01110d8770ac99556901143a54c3d492cde0
+Author: Keith Packard <keithp@keithp.com>
+Date: Thu Jan 4 02:27:11 2018 -0800
+
+ altos/scheme: Accept more escaped character constants
+
+ Allow all those specified in r7rs
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 243baa14a62e3efe5ae792c73db75f9c2cb86abb
+Author: Keith Packard <keithp@keithp.com>
+Date: Thu Jan 4 02:26:21 2018 -0800
+
+ altos/scheme: Allow make-vector value param to be optional
+
+ It can default to #f
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit a6e01e7aafb1d1fdb15d633ec23d8fe51afd15df
+Author: Keith Packard <keithp@keithp.com>
+Date: Thu Jan 4 02:25:45 2018 -0800
+
+ altos/scheme: Add builtin list-tail
+
+ This is used enough to warrant a builtin, rather than lisp implementation
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit e030fba5ab556c88af918d08e1b62e63d6605638
+Author: Keith Packard <keithp@keithp.com>
+Date: Thu Jan 4 02:24:15 2018 -0800
+
+ altos/scheme: Fix macro-detection debugging
+
+ Just update to use ao_scheme_printf
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 036a5311cbc86dbc5a8f859778d52d588915e4e2
+Author: Keith Packard <keithp@keithp.com>
+Date: Thu Jan 4 02:23:40 2018 -0800
+
+ altos/scheme: add make-string builtin
+
+ Allocate a blank string.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 0a0327330dcbf5531cd0f8ca8b912fa51ef44f13
+Author: Keith Packard <keithp@keithp.com>
+Date: Thu Jan 4 02:22:02 2018 -0800
+
+ altos/scheme: Make constant built pool as large as possible
+
+ This allows building with as much constant data as will fit.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 637795fcf8ca52af431acec183cc961dae121e57
+Author: Keith Packard <keithp@keithp.com>
+Date: Wed Jan 3 14:58:57 2018 -0800
+
+ altos/scheme: Make for-each tail recursive
+
+ Provides a native version of for-each that is tail recursive, rather
+ than having it just use map and discard the return value.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 7bfc1eda398e8767e352cd6396ac61c7ea021079
+Author: Keith Packard <keithp@keithp.com>
+Date: Wed Jan 3 14:57:39 2018 -0800
+
+ altos/scheme: Add start/end args to vector->list
+
+ This is an r7rs extension which allows you to extract a subset of the
+ vector.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 2bcc178f3cbfd346b134bb3fe700b0512f340fea
+Author: Keith Packard <keithp@keithp.com>
+Date: Wed Jan 3 14:56:15 2018 -0800
+
+ altos/scheme: fix parsing of vector followed by list
+
+ The 'parsing a vector' state value wasn't getting cleared at the end
+ of the vector, so that (#(1 2) (3 4) returned (#(1 2) #(3 4)
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit b7c34a2e5ecff19d61d337b8c84976cc46005ec4
+Author: Keith Packard <keithp@keithp.com>
+Date: Wed Jan 3 14:55:24 2018 -0800
+
+ altos/scheme: support %x format for scheme printf
+
+ read debugging uses this format.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit fccb5105b79d5b9e2ed052ce5459028015c01741
+Author: Keith Packard <keithp@keithp.com>
+Date: Wed Jan 3 14:53:48 2018 -0800
+
+ altos/scheme: Add support for hex, octal and binary constants
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 365eee3ebfe73204033089b363687228f97e5d98
+Author: Bdale Garbee <bdale@gag.com>
+Date: Wed Jan 3 14:43:29 2018 -0600
+
+ need to push telegps-v2.0 loader .bin file to corporate repo, too
+
+commit fc63968f90e3fab12e63d973a4ee7f16d80d765f
+Author: Keith Packard <keithp@keithp.com>
+Date: Sun Dec 24 14:29:09 2017 -0800
+
+ altos/scheme: Pull out per-frame vals while printing list of frames
+
+ Was using the same vals for all frames, which just doesn't work well.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 7b5892f75a75363a656ede8befb419245aa218b5
+Author: Keith Packard <keithp@keithp.com>
+Date: Sun Dec 24 14:28:29 2017 -0800
+
+ altos/scheme: Add separate floor-quotient builtin
+
+ Does what 'quotient' did before, now quotient rounds towards zero
+ while floor-quotient rounds down.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit d95486be96fe989f6984b3452c5c5d92897c5606
+Author: Bdale Garbee <bdale@gag.com>
+Date: Thu Dec 21 20:40:28 2017 -0700
+
+ update Releasing with wisdom from 1.8.4 release process
+
+commit 16a9d8617b2d2092d166a85ada4349601afb0dce
+Author: Bdale Garbee <bdale@gag.com>
+Date: Thu Dec 21 19:06:22 2017 -0700
+
+ releasing 1.8.4
+
+commit dbb78c8222c45f4430601deee0194b0c9dc2e79a
+Merge: fe38c225 87aab995
+Author: Bdale Garbee <bdale@gag.com>
+Date: Thu Dec 21 19:05:46 2017 -0700
+
+ Merge branch 'master' into branch-1.8
+
+commit 87aab99521dc44d1d29fbb0b7f227f868f074836
+Author: Keith Packard <keithp@keithp.com>
+Date: Thu Dec 21 17:37:10 2017 -0800
+
+ Bump for version 1.8.4
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 4bcdc106df2c5e8572570e57b4d97121df94799a
+Author: Keith Packard <keithp@keithp.com>
+Date: Thu Dec 21 17:36:24 2017 -0800
+
+ Doc updates for version 1.8.4
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 46304aa257635d14afc4d8567eedba0f93a5742f
+Author: Keith Packard <keithp@keithp.com>
+Date: Tue Dec 19 16:57:33 2017 -0800
+
+ altos/micropeak: Remove all compiler results
+
+ Not just the current version.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 99299986e194337b05ee81cfb7c4aa1cb9e9a74e
+Author: Keith Packard <keithp@keithp.com>
+Date: Tue Dec 19 16:56:33 2017 -0800
+
+ altos/attiny: Add ADC implementation
+
+ It's primitive, but might serve to read ADC values. Untested.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 342132a8869d530b6893bb84becf03cb30490600
+Author: Keith Packard <keithp@keithp.com>
+Date: Tue Dec 19 16:21:23 2017 -0800
+
+ ao-bringup: turnon_easymini was left with dfu_util disabled
+
+ This was presumably changed for some test and left in the wrong
+ state.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 6d05747941b8e31afb1f8522ac0b8c1ad12aa90f
+Author: Keith Packard <keithp@keithp.com>
+Date: Tue Dec 19 16:19:40 2017 -0800
+
+ altos/easymini-v2.0: Adapt to final hardware pin assignment changes
+
+ Beeper moved from PB0 to PB1 (Tim3 CH4)
+ Drogue fire moved from PB6 to PB3
+ Bootloader moved from PB1 to PB6
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 9826845f952abe898f029e31cc0f7080708e2eae
+Author: Keith Packard <keithp@keithp.com>
+Date: Tue Dec 19 13:09:24 2017 -0800
+
+ altos/lambdakey-v1.0: Add back and/or macros
+
+ With scheme shrinking a bit, there's now space for these useful macros.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit ed1f7b79abc7400a54b35fbf62c9db6855f9129a
+Author: Keith Packard <keithp@keithp.com>
+Date: Tue Dec 19 12:39:20 2017 -0800
+
+ altos/scheme: Replace per-type indexed stash with poly stash heap
+
+ Instead of having a random set of stash arrays with explicit indices
+ used by callers, just have a general heap. Less error prone, and less code.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 71fb79492cb955af4bd52e79f1fa69d17e084dbc
+Author: Keith Packard <keithp@keithp.com>
+Date: Tue Dec 19 12:16:24 2017 -0800
+
+ altos/scheme: Replace memory pool macros with inlines
+
+ AO_SCHEME_IS_CONST -> ao_scheme_is_const_addr
+ AO_SCHEME_IS_POOL -> ao_scheme_is_pool_addr
+
+ Provides better typechecking and avoids confusion with
+ ao_scheme_is_const inline (which takes an ao_poly instead of a void *)
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 34f998d147d08e966daad1ab76c40906018d3d8d
+Author: Keith Packard <keithp@keithp.com>
+Date: Tue Dec 19 11:51:33 2017 -0800
+
+ altos/scheme: AO_SCHEME_IS_CONS -> ao_scheme_is_cons
+
+ This inline was already defined; just use it. Also, switch some places
+ to use ao_scheme_is_pair instead as appropriate.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit fa6f4b331db9d37da6767005fd375b696485b46b
+Author: Keith Packard <keithp@keithp.com>
+Date: Tue Dec 19 11:43:23 2017 -0800
+
+ altos/scheme: ao_scheme__cons -> ao_scheme_cons
+
+ Fix the double underscore in this name. Ick.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 00390fb09f47654905824af671b966ffca0a38b3
+Author: Keith Packard <keithp@keithp.com>
+Date: Tue Dec 19 11:40:08 2017 -0800
+
+ altos/scheme: Don't optimize ao_scheme_make_const
+
+ Performance isn't interesting, and it's nice to have a bare system
+ ready for debugging.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit ba472dda57e134fe0f0e4a571a6d0c1e5a1ea6eb
+Author: Keith Packard <keithp@keithp.com>
+Date: Tue Dec 19 11:39:39 2017 -0800
+
+ altos/scheme: Clean up test CFLAGS
+
+ make it easy to switch between debug and optimized builds.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 53b99e0419cb44c7983e41026bf0430deae58940
+Author: Keith Packard <keithp@keithp.com>
+Date: Tue Dec 19 11:37:33 2017 -0800
+
+ altos/scheme: (define (foo . bar)) has a pair, not list as card
+
+ When defining a lambda with varargs, the args are not a list as the
+ final element is not a pair or nil. Use pair? instead of list? to
+ detect this form correctly.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit fbe5dc9f215e7014aa8f9d325c1fba939816be03
+Author: Keith Packard <keithp@keithp.com>
+Date: Tue Dec 19 11:35:09 2017 -0800
+
+ altos/scheme: apply also needs to not free value list on lambdas
+
+ When apply is invoked on any function, the cons in the argument list
+ cannot be immediately freed as they have been passed to the
+ function. That applies to both built-ins as well as lambdas; this
+ patch removes the special ao_scheme_skip_cons_free global and just
+ marks the stack in both cases.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 431165e5fa72ba6dffd477de32960745cdec332c
+Author: Keith Packard <keithp@keithp.com>
+Date: Tue Dec 19 11:33:36 2017 -0800
+
+ altos/scheme: Rework display/write code
+
+ Unify output functions and add bool to switch between write and
+ display mode. Make that only affect strings (as per r⁷rs).
+
+ Use print recursion detection in frame and stack code, eliminating
+ PRINT flags in type field.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 5628b983497d9d03e10cccee157419210a49cfa9
+Author: Keith Packard <keithp@keithp.com>
+Date: Mon Dec 18 02:14:57 2017 -0800
+
+ altos/scheme: Compile scheme test with -O3
+
+ This level of optimization caused trouble, so use it all of the time.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 6593570418e087b9f83ed7f90303d4e1e7d20e83
+Author: Keith Packard <keithp@keithp.com>
+Date: Mon Dec 18 02:12:04 2017 -0800
+
+ altos/scheme: Work around gcc 7.2.0 optimization bug in memory manager
+
+ After marking a set of memory chunks, it's possible that all of them
+ will be packed tight against 'top', in which case none of them will be
+ moving. In that case, gcc 7.2.0 appears to generate incorrect code
+ causing the loop to be abandoned, meaning that we don't actually
+ collect anything at all.
+
+ Add a quick short-circuit test just after the mark phase that skips
+ the code which wouldn't do anything in this case.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 9f1849e548e35498f88a0b8adbbc4a57c7a39222
+Author: Keith Packard <keithp@keithp.com>
+Date: Mon Dec 18 02:11:07 2017 -0800
+
+ altos/scheme: rearrange debugging defines
+
+ Allow applications to redefine these as desired, add more flexibility
+ in what the various memory debugging flags can do.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 2def6abebb3d14a29fe0e03bac09b9d74d2d1578
+Author: Keith Packard <keithp@keithp.com>
+Date: Mon Dec 18 02:08:23 2017 -0800
+
+ altos/scheme: abort when we try to print an invalid value
+
+ This can catch a host of interpreter bugs; best to abandon the program
+ when it happens.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit e1a6b3bf458f311d832aea7eec34935d42f8efed
+Author: Keith Packard <keithp@keithp.com>
+Date: Sun Dec 17 22:22:50 2017 -0800
+
+ altos/scheme: Use memory manager mark code to note recursive print
+
+ This flags any object being printed and checks before recursing to
+ avoid infinite loops.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 9d1131da911f7220ac8b6cb7ba5a0afd3deef657
+Author: Keith Packard <keithp@keithp.com>
+Date: Sun Dec 17 22:19:38 2017 -0800
+
+ altos/scheme: Use AO_SCHEME_IS_CONS in cons memory funcs
+
+ More efficient than ao_scheme_poly_type as it doesn't care about
+ non-prim types.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit b866b3ca249dce61f8ff16c8d28514d1b80386d7
+Author: Keith Packard <keithp@keithp.com>
+Date: Thu Dec 14 23:10:43 2017 -0800
+
+ ao-bringup/test-chaoskey: Make finding most recent device more reliable
+
+ Use dmesg -t to strip off the timestamp, which avoids having a
+ variable number of fields for awk to look at.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit a4c9233aa8a2f1b1dca6580d6d6275b48c40f01f
+Author: Keith Packard <keithp@keithp.com>
+Date: Thu Dec 14 23:09:02 2017 -0800
+
+ altos/lambdakey-v1.0: shrink scheme code to fit the ROM
+
+ scheme has grown a bit; adapt
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 32f6877288ea6b7eb1cae9a42fbe8e2c5dbb2f08
+Author: Keith Packard <keithp@keithp.com>
+Date: Thu Dec 14 23:04:39 2017 -0800
+
+ altos/scheme: swap BIGINT and STRING types
+
+ This lets BIGINT be a primitive type, allowing it to use all 32 bits
+ for storage. This does make strings another byte longer, and also
+ slightly harder to deal with. It's a trade off.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 2e11cae044cd2c053049effd76df9c5adecb84d7
+Author: Keith Packard <keithp@keithp.com>
+Date: Tue Dec 12 18:07:06 2017 -0800
+
+ altos/scheme: integer? is builtin on all versions
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 0614c653a8ca8c4ccbf59d34296ca4b3e7d9f3a0
+Author: Keith Packard <keithp@keithp.com>
+Date: Tue Dec 12 18:02:17 2017 -0800
+
+ altos/lambdakey-v1.0: Make stack larger
+
+ scheme doesn't like to run with less than a 1kB stack.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 839a7454686415a52f532d0e4f379061a68d5f1b
+Author: Keith Packard <keithp@keithp.com>
+Date: Tue Dec 12 18:01:21 2017 -0800
+
+ altos/scheme: inline some mem calls to reduce stack usage.
+
+ Also includes some code to display stack usage during collect calls.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit c490efdf90befdf048ff7d9cbbe26bcc6f942820
+Author: Keith Packard <keithp@keithp.com>
+Date: Tue Dec 12 18:00:12 2017 -0800
+
+ altos/scheme: Use direct calls from frame to frame_vals mem functions
+
+ Avoids the extra stack depth of the poly versions.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit ca27d467198c556be483961a6ca3b8f97bbe96a6
+Author: Keith Packard <keithp@keithp.com>
+Date: Tue Dec 12 17:59:26 2017 -0800
+
+ altos/scheme: More compiler warning cleanups
+
+ Make local funcs static. Don't mix decls and code.x
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 4bfce37e7567d9c2a09ea4da8113e7639516ed6e
+Author: Keith Packard <keithp@keithp.com>
+Date: Tue Dec 12 17:54:03 2017 -0800
+
+ altos/scheme: apply const to places taking const strings.
+
+ Mostly printf and friends.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 28dbe9a04b16f79db255baecbf0cd486c510ef58
+Author: Keith Packard <keithp@keithp.com>
+Date: Tue Dec 12 15:31:27 2017 -0800
+
+ altos/stm: Align 'data' to 8 bytes, just like textram
+
+ The textram section must be aligned to 8 bytes to keep the linker
+ happy. However, if that section contains no data, the declaration will
+ set the __data_start__ value to that alignment, but the data section
+ itself would start on a 4-byte alignment, potentially 4 bytes lower
+ than the value indicated by __data_start__. This completely scrambles
+ initialized memory as the startup code will copy the data segment to
+ __data_start__, 4 bytes off of the actual data segment start.
+
+ Fix this by forcing the data segment to also be aligned to 8 bytes.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit db352bd0723e8d640bb034bc14e5ad193f0afe1d
+Author: Keith Packard <keithp@keithp.com>
+Date: Tue Dec 12 15:30:45 2017 -0800
+
+ altos/kernel: Allow ao_cmd to be built without tasking
+
+ Useful for single-threaded applications, like lambdakey
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 09ea349f5b37e257e8ca23ead493ba1694395530
+Author: Keith Packard <keithp@keithp.com>
+Date: Tue Dec 12 15:27:26 2017 -0800
+
+ altos/lambdakey-v1.0: Get this building again
+
+ The lambdakey can't hold a full implementation of the scheme
+ interpreter, so use only a subset, removing floats, bigints and
+ vectors. Also reduce the pre-loaded lisp code as well.
+
+ It's pretty spare at this point; but it does fill the ROM.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit d8c9024f3829dc3f241b16869f165f3ee01764f3
+Author: Keith Packard <keithp@keithp.com>
+Date: Tue Dec 12 15:25:51 2017 -0800
+
+ altos/scheme: Support scheme subsetting via feature settings
+
+ This provides for the creation of smaller versions of the interpreter,
+ leaving out options like floating point numbers and vectors.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit a15166c435f65cb36f487ec8e5a4ff558a7e0502
+Author: Keith Packard <keithp@keithp.com>
+Date: Tue Dec 12 15:15:41 2017 -0800
+
+ altos/scheme: Add ao_scheme_vector.c
+
+ Useful to include the code for implementing vectors
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 5cf77306257517a3d1ec8cea85fca34f576a8f22
+Author: Keith Packard <keithp@keithp.com>
+Date: Mon Dec 11 22:36:00 2017 -0800
+
+ doc: Don't 'publish' release notes, don't build pdf release notes
+
+ All we use the release notes for is to include into the main AltOS
+ page. Also remove the docinfo for these files so that information
+ isn't duplicated for each set of release notes.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 40236913922e0395780cd7d90354546ecaf279f9
+Author: Bdale Garbee <bdale@gag.com>
+Date: Mon Dec 11 22:15:46 2017 -0700
+
+ update Releasing with changes discovered in 1.8.3 release process
+
+commit fe38c22595b050435dbacd35f1baae064fb7de75
+Author: Bdale Garbee <bdale@gag.com>
+Date: Mon Dec 11 21:38:59 2017 -0700
+
+ releasing 1.8.3
+
+commit ea0aa97fb93e669868a6f2c49c5d4b46e7615b1f
+Merge: 216ea638 9adf8b23
+Author: Bdale Garbee <bdale@gag.com>
+Date: Mon Dec 11 21:37:48 2017 -0700
+
+ Merge branch 'master' into branch-1.8
+
+commit 9adf8b23aac8256f230b10adcab9dd323266caaa
+Author: Bdale Garbee <bdale@gag.com>
+Date: Mon Dec 11 21:33:21 2017 -0700
+
+ TeleMega default is now v3.0
+
+commit b4d78ad85e8f5b1bee78746d63bb4b069e087e5a
+Author: Keith Packard <keithp@keithp.com>
+Date: Mon Dec 11 16:30:46 2017 -0800
+
+ doc: Update release notes and docinfo for 1.8.3
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 2efb997865ee46bf0e8d5145c95d051a7656222a
+Author: Keith Packard <keithp@keithp.com>
+Date: Mon Dec 11 14:42:45 2017 -0800
+
+ altoslib: Keep old GPS values when updating data
+
+ This way, updating satellite information doesn't drop all of the
+ regular GPS data on the floor.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit fa3ff3a089e4af88dd0cc9a9e92511a0ba4a8e0f
+Author: Keith Packard <keithp@keithp.com>
+Date: Mon Dec 11 14:08:32 2017 -0800
+
+ altos: Actually store current MPU9250 data in data ring
+
+ The ring is updated when the ADC finishes; all of the other sensor
+ data needs to be copied in at that point.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 962df1f8c7f7ffbebe9b32d6ac363b333af606b3
+Author: Keith Packard <keithp@keithp.com>
+Date: Mon Dec 11 13:47:54 2017 -0800
+
+ altos: Remove more software for hardware prototypes
+
+ These never saw the light of day.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 05efe58cb13b58292527668ca51639eaebe1112b
+Author: Bdale Garbee <bdale@gag.com>
+Date: Mon Dec 11 14:44:15 2017 -0700
+
+ take telescience out of the routine builds
+
+commit 713e8ca6b6cfb29555d8d847e0bb2652cfe011ae
+Author: Keith Packard <keithp@keithp.com>
+Date: Mon Dec 11 12:23:29 2017 -0800
+
+ Bump to version 1.8.3
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 992797db2158b23d46c496e5e223deeca28bf4c9
+Author: Keith Packard <keithp@keithp.com>
+Date: Mon Dec 11 12:23:00 2017 -0800
+
+ doc: Note TeleMega v3.0 support in 1.8.3 relnotes
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 8d65e7b367712075a42d26c6d4bbff474dc1ae14
+Author: Keith Packard <keithp@keithp.com>
+Date: Tue Dec 5 12:22:34 2017 -0800
+
+ altos/drivers: Hook up mag sensor for MPU9250
+
+ Set mag sensor to provide data at 100Hz.
+ Set i2c master to pull mag data at sample rate (200Hz).
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit ec638405045d33d48476ab85edf09a2e1756e3e3
+Author: Keith Packard <keithp@keithp.com>
+Date: Sun Dec 10 18:35:53 2017 -0800
+
+ altos/scheme: Allow ao_scheme_read_eval_print to be restarted
+
+ Reset exceptions at the top so that we can call it more than once.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 8ebecd364fd328e9c649c11729bddf58731aaafb
+Author: Keith Packard <keithp@keithp.com>
+Date: Sun Dec 10 18:34:49 2017 -0800
+
+ altos: Allow building with newlib + avr stdio on ARM
+
+ Redefines some stdio bits so that we can build with either pdclib or
+ newlib + avr stdio.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit b0de72d942eb87c5acd190878dd57ca4f812e8a1
+Author: Keith Packard <keithp@keithp.com>
+Date: Sun Dec 10 18:32:18 2017 -0800
+
+ altos: Add scheme for stm discovery board demo
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 655576011e9cc648c7c4bbf51179744a427ff237
+Author: Keith Packard <keithp@keithp.com>
+Date: Sun Dec 10 18:21:01 2017 -0800
+
+ altos/lambdakey-v1.0: Switch to newlib, get things compiling again
+
+ scheme is now way too large to fit on this device; some subsetting is
+ clearly indicated.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 7d77071f5b45632937f262600ca95c7b71f4d3da
+Author: Keith Packard <keithp@keithp.com>
+Date: Sun Dec 10 16:55:57 2017 -0800
+
+ altos/scheme: Add Makefile for scheme test app
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit dd2ed58fcdffaff7b5a9ef898affa3e1ec01ef44
+Author: Keith Packard <keithp@keithp.com>
+Date: Sun Dec 10 16:54:50 2017 -0800
+
+ altos/scheme: Make test scheme app heap maximum size
+
+ It's only 32kB.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 3e7a703bb2e70a0568b44159b993386f7ec46e04
+Author: Keith Packard <keithp@keithp.com>
+Date: Sun Dec 10 16:53:25 2017 -0800
+
+ altos/scheme: Make eqv? work for numbers and strings
+
+ Large numbers, floats and strings need a value check, not just a
+ comparison between ao_polys
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit bdafb4dfad89d92efec37ed826d5f22e9167e717
+Author: Keith Packard <keithp@keithp.com>
+Date: Sun Dec 10 16:52:26 2017 -0800
+
+ altos/scheme: Stash cons across value allocation in compare
+
+ Large ints, strings and floats can cause allocation, requiring that
+ the 'cons' pointer be stashed and retrieved in case it moved.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit b72638e60b6636b479b79bbf0047cf7409f58820
+Author: Keith Packard <keithp@keithp.com>
+Date: Sun Dec 10 16:51:25 2017 -0800
+
+ altos/scheme: add list-copy
+
+ A lot easier as a built-in; the obvious scheme version is recursive.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 7517da1646fc30faaa9ee1c969cfa35ae1a17423
+Author: Keith Packard <keithp@keithp.com>
+Date: Sun Dec 10 16:50:06 2017 -0800
+
+ altos/scheme: Use 64-bit ints to track memory allocation stats
+
+ These are only collected for debug purposes, but can get quite large
+ if the interpreter runs for a while.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 7e14e243565e814ddd524c8d09454719dc89c6d8
+Author: Keith Packard <keithp@keithp.com>
+Date: Sun Dec 10 13:13:27 2017 -0800
+
+ altos/scheme: Add a bunch of string and vector builtins
+
+ Just make the language closer to r7rs
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 6d14f809b54b99725447a934047167c2e7febe82
+Author: Bdale Garbee <bdale@gag.com>
+Date: Mon Dec 11 10:17:40 2017 -0700
+
+ TeleMega v3.0 turnon scripts
+
+commit d1d98e408311c5ba18138a18f4c88448e4254626
+Merge: 2f8fce1c abb856cd
+Author: Bdale Garbee <bdale@gag.com>
+Date: Mon Dec 11 10:16:24 2017 -0700
+
+ Merge branch 'master' of ssh://git.gag.com/scm/git/fw/altos
+
+commit abb856cd66e00d739e4efb1930b5c168eaf48029
+Author: Keith Packard <keithp@keithp.com>
+Date: Sun Dec 10 00:02:34 2017 -0800
+
+ altos/scheme: Avoid crashing with non-list in length
+
+ Use ao_scheme_cons_cdr to fetch the next list element as that returns
+ NULL for non-cons elements.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 17fe6de833cccb6d43d0ac0ed84a4faaa3463a09
+Author: Keith Packard <keithp@keithp.com>
+Date: Sun Dec 10 00:02:00 2017 -0800
+
+ altos/scheme: Add vectors
+
+ Constant time and smaller can be a feature.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 0d3365e2c04793cd8432c30a66881f53385a2e60
+Author: Keith Packard <keithp@keithp.com>
+Date: Sun Dec 10 00:00:23 2017 -0800
+
+ altos/scheme: Fix name of constant scheme file
+
+ .lisp -> .scheme
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 111622dbcd56c225a9d5ace9f0ef745e62f8a94c
+Author: Keith Packard <keithp@keithp.com>
+Date: Sat Dec 9 16:57:35 2017 -0800
+
+ altoslib: Fix 8 to 12 bit conversion for Mega pyro voltage data
+
+ The conversion was losing the replicated top four bits by shifting by
+ the wrong amount.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 1133130986a78628ea297ce1f6a023baf4382d8f
+Author: Keith Packard <keithp@keithp.com>
+Date: Sat Dec 9 16:56:20 2017 -0800
+
+ altos/scheme: Let readline know if there's a list in progress
+
+ This lets the interactive prompt change based on what state the lexer
+ is in
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 2f8fce1cf6ce4bd12a836cc8ee15f4edbc95c95e
+Merge: d314a565 185b1136
+Author: Bdale Garbee <bdale@gag.com>
+Date: Tue Dec 5 13:23:09 2017 -0700
+
+ Merge branch 'master' of ssh://git.gag.com/scm/git/fw/altos
+
+commit 185b11367cd85948885fceafb5d46303b6f1356d
+Author: Keith Packard <keithp@keithp.com>
+Date: Tue Dec 5 12:22:34 2017 -0800
+
+ altos/drivers: Start adding defines to get mag data out of MPU9250
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit d314a5654fafa5eac86d8293f1197a2f2c2eac72
+Author: Bdale Garbee <bdale@gag.com>
+Date: Tue Dec 5 13:18:45 2017 -0700
+
+ moving to TeleMega v3.0 by default
+
+commit 1bf219209c8d9e31a9c3726dad169ff5d17ed4b2
+Author: Bdale Garbee <bdale@gag.com>
+Date: Tue Dec 5 13:17:18 2017 -0700
+
+ handle repeated invocations without failing as often
+
+commit 2aa02234b1ac2b1701b44fcec9e9bd82bea526b7
+Author: Keith Packard <keithp@keithp.com>
+Date: Tue Dec 5 10:48:04 2017 -0800
+
+ altos/cortexelf-v1: Adapt to lisp->scheme name change
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 038581bd212e66bcf017c7ace28c80a3ae0d0f50
+Author: Keith Packard <keithp@keithp.com>
+Date: Tue Dec 5 10:42:02 2017 -0800
+
+ altos/scheme: Add explicit dependency on ao_scheme_builtin.h for ao_scheme_make_const
+
+ This ensures that a parallel build will wait for ao_scheme_builtin.h
+ to be complete before attempting to compile ao_scheme_make_const
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit bd7a19a86f6d4fe19c7e72904e9b8ac0f2081ff7
+Author: Keith Packard <keithp@keithp.com>
+Date: Tue Dec 5 10:38:14 2017 -0800
+
+ altos/scheme: Move scheme test program to scheme sub-directory
+
+ Keeps it away from the usual test setup
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 195cbeec19a6a44f309a9040d727d37fe4e2ec97
+Author: Keith Packard <keithp@keithp.com>
+Date: Tue Dec 5 10:29:13 2017 -0800
+
+ altos/scheme: Rename to 'scheme', clean up build
+
+ Constant block is now built in a subdir to avoid messing up source
+ directory.
+
+ Renamed to ao_scheme to reflect language target.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 9dbc686ad7d3289dc0f9bcf4a973f71100e02ded
+Author: Keith Packard <keithp@keithp.com>
+Date: Sun Dec 3 19:54:18 2017 -0800
+
+ altos/lisp: Switch to scheme formal syntax for varargs
+
+ Scheme uses bare symbols to indicate a varargs parameter; any bare
+ (i.e., not wrapped in a cons cell) parameter will get the 'rest' of
+ the parameter list. This works for lambdas, nlambdas and macros. As a
+ result, the 'lexpr' form has been removed as it is equivalent to a
+ lambda with a varargs formal.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit a1d013ab8cc508d4e17ae8876bc5465d1a2dfc1e
+Author: Keith Packard <keithp@keithp.com>
+Date: Sun Dec 3 19:52:11 2017 -0800
+
+ altos/lisp: Fix stash usage across frame allocation
+
+ Must un-stash before allocation failure check.
+ Use frame_stash instead of poly_stash for frames.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 32ab76c3049b913283caafbaef873754d76dc9d4
+Author: Keith Packard <keithp@keithp.com>
+Date: Sun Dec 3 19:49:20 2017 -0800
+
+ altos/lisp: Check only cdr base type when moving cons cells
+
+ The cdr may have moved, so we can't look at the target object
+ type. Fortunately, the base type encoded in the reference itself is
+ sufficient to check for a non-cons cdr.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit ed6967cef5d82baacafe1c23229f44d58c838326
+Author: Keith Packard <keithp@keithp.com>
+Date: Sun Dec 3 19:47:03 2017 -0800
+
+ altos/lisp: Split out read debug, add memory validation
+
+ Split read debug into a separate #define to reduce debug noise
+ Add some memory validation -- validate stash API, and validate
+ cons_free calls.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit b9009b3916956db00b7b78bd06fb0df704690eb1
+Author: Keith Packard <keithp@keithp.com>
+Date: Sat Dec 2 23:21:55 2017 -0600
+
+ altos/lisp: use strtof instead of atof
+
+ atof returns double, strtof returns float.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 880c35363a2596202c8a3d980bf4ac41eceead66
+Author: Keith Packard <keithp@keithp.com>
+Date: Sat Dec 2 23:21:01 2017 -0600
+
+ altos/lisp: Convert more builtin lisp code to scheme format
+
+ Use defines where possible, use (define (name args ...)) form for lambdas
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 577911241db454bc3129fc47566c6a55752c4182
+Author: Keith Packard <keithp@keithp.com>
+Date: Sat Dec 2 23:19:44 2017 -0600
+
+ altos/lisp: Overflow int computations to float
+
+ When an int computation overflows, switch to float.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit b986a12b478a6d4ff550786d24aa8628dc0abe32
+Author: Keith Packard <keithp@keithp.com>
+Date: Sat Dec 2 15:59:17 2017 -0600
+
+ altoslib: Add support for TeleMega v3.0 log files
+
+ These look much like TeleMega v2.0 log files, except that the mag
+ sensor data now comes from the mpu9250 instead of an external
+ hmc5883. The gyro and 3-axis accel data from the mpu9250 are the same
+ as the mpu6000.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 8c19778d8b56aafa048ddf9654c40b32bd8c64b0
+Author: Keith Packard <keithp@keithp.com>
+Date: Sat Dec 2 15:53:05 2017 -0600
+
+ altos: Build TeleMega v3.0 by default
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit ecc075596d6cd2b9c0a3107036d5368ebc3a77bd
+Author: Keith Packard <keithp@keithp.com>
+Date: Sat Dec 2 15:31:06 2017 -0600
+
+ altos: Add TeleMega v3.0
+
+ Adds files to build telemega v3.0 flash loader and firmware
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit f0068719b17019c5cd7ed318364a0581caf64e1a
+Author: Keith Packard <keithp@keithp.com>
+Date: Sat Dec 2 15:32:38 2017 -0600
+
+ altos/kernel: MPU9250 support
+
+ Use MPU9250 for accel, gyro and mag data in logging, telemetry and
+ flight status computations.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit c31744299e5a4342bbe26d3735ee2d8f09192ae9
+Author: Keith Packard <keithp@keithp.com>
+Date: Fri Dec 1 15:40:23 2017 -0600
+
+ altos/lisp: split set/def. Add def support to lambdas
+
+ In scheme, set can only re-define existing variables while def cannot
+ redefine existing variables in lambda context. Def within lambda
+ creates a new variable at the nearest enclosing scope.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 98923ae1189f062b8b94120d47a56892db25493f
+Author: Keith Packard <keithp@keithp.com>
+Date: Fri Dec 1 18:28:16 2017 +0100
+
+ altos/lisp: Split out frame vals from frame struct
+
+ This lets the frame be resized without moving the base structure. The
+ plan is to allow all frames to be resized, not just the global frame.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 835bf4131f9e20575bfdf2179462ebdf54a14761
+Author: Keith Packard <keithp@keithp.com>
+Date: Fri Dec 1 12:06:04 2017 +0100
+
+ altos/lisp: Make let distinct from let*
+
+ let is supposed to define the values all at once, evaluating the
+ initializers in the enclosing context. let* defines the new names and
+ then initializes them one at a time.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 5d0b85f25fa1e5cc816a8256afb38cf9552f6d9d
+Author: Keith Packard <keithp@keithp.com>
+Date: Fri Dec 1 11:32:27 2017 +0100
+
+ altos/lisp: return from unmatched cond is #f, not nil
+
+ Fix the return value when we fall off the end of a cond expression to
+ be #f
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 796017262cd433af5d143cc7168c944e1e05f4e2
+Author: Keith Packard <keithp@keithp.com>
+Date: Fri Dec 1 11:31:29 2017 +0100
+
+ altos/lisp: Fix pairp builtin
+
+ Pairs are non-nil cons values; add an explicit check for nil here
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit cd0bd9791a77868c226d285bf4d57e8c321755d5
+Author: Keith Packard <keithp@keithp.com>
+Date: Fri Dec 1 10:12:38 2017 +0100
+
+ altos/lisp: Add quasiquote
+
+ This adds read support for quasiquote syntax, and then adds a
+ quasiquote implementation in lisp
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 00bf2ca86b60e6501880011897cea073865c5a03
+Author: Keith Packard <keithp@keithp.com>
+Date: Sat Nov 25 17:29:10 2017 -0800
+
+ altos/lisp: Rename progn to begin
+
+ Match scheme name.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 5f9f97cc2d43936d1941da3a9a130c279bc70b99
+Author: Keith Packard <keithp@keithp.com>
+Date: Sun Nov 19 21:07:23 2017 -0800
+
+ altos/test: Update to build altos lisp test app
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 6d2f271a45759bd792d299f04a424d3382ef4798
+Author: Keith Packard <keithp@keithp.com>
+Date: Sun Nov 19 21:07:00 2017 -0800
+
+ altos/lisp: Add floats
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 12a1f6ad48f2b924f71239effeb90afca75a090f
+Author: Keith Packard <keithp@keithp.com>
+Date: Sat Nov 18 22:00:44 2017 -0800
+
+ altos/lisp: Fix some scheme compat issues
+
+ flush -> flush-output
+ nth -> list-ref (oh, and add list-tail)
+ add let* (same as let for now)
+ write control chars in octal
+ make hanoi example work
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 5f8f0ed5cd5d4b4f793c602ed09f9b4bdb98f7e8
+Author: Keith Packard <keithp@keithp.com>
+Date: Sat Nov 18 20:38:15 2017 -0800
+
+ altos/lisp: Add 'big' ints -- 24 bits wide
+
+ With the default ints being only 14 bits, having a larger type with
+ more precision seems useful. This is not exposed to the application.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit e745229311366a792110d78d8480a2bf83eef9a0
+Author: Keith Packard <keithp@keithp.com>
+Date: Fri Nov 17 23:28:08 2017 -0800
+
+ altos/cortexelf-v1: Make lisp compile again
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 65fb0ad8693407cc9bd114424c1f51b6aa6befc3
+Author: Keith Packard <keithp@keithp.com>
+Date: Fri Nov 17 23:27:36 2017 -0800
+
+ altos/test: Add jiffy funcs to lisp test
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit cf5729a0bae51172f12fc9ec4339d4e975a45fcc
+Author: Keith Packard <keithp@keithp.com>
+Date: Fri Nov 17 23:23:50 2017 -0800
+
+ altos/lisp: Finish first pass through r7rs
+
+ * print -> write, patom -> display
+ * Add read-char, write-char
+ * Add exit, current-jiffy, current-second, jiffies-per-second
+ * Add for-each and string-for-each
+ * Avoid duplicate builtins with different atoms
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit e1acf5eb12aceda7aa838df031c1da1129d0fa5d
+Author: Keith Packard <keithp@keithp.com>
+Date: Fri Nov 17 22:14:19 2017 -0800
+
+ altos/lisp: Add apply
+
+ And all of the library routines that use it, map, string-map and friends.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit a4e18a13029cc7b16b2ed9da84d6e606bc725ac3
+Author: Keith Packard <keithp@keithp.com>
+Date: Fri Nov 17 08:50:50 2017 -0800
+
+ altos/lisp: Character consts. String and assoc builtins.
+
+ Also add back escaped characters in strings.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 5b6f4b5de89a2bb0d63442e2651cf8d2ee0f4b10
+Author: Keith Packard <keithp@keithp.com>
+Date: Fri Nov 17 08:04:28 2017 -0800
+
+ altos/lisp: Generate built-in lambda atoms for const creation
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit cd9152973f29f4e775569f5acbbe8fab2d93d170
+Author: Keith Packard <keithp@keithp.com>
+Date: Thu Nov 16 22:15:06 2017 -0800
+
+ altos/test: More lisp test Makefile fixes
+
+ Depend on ao_lisp_const.h
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 435a91ae3889cd361b543f4555a78488905e0bbb
+Author: Keith Packard <keithp@keithp.com>
+Date: Thu Nov 16 22:13:46 2017 -0800
+
+ altos/lisp: Lots more scheme bits
+
+ * Arithmetic functions and tests
+ * append, reverse and list-tail
+ * set-car! and set-cdr!
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit cc76030d669600051fbb42a8cf85701aaaf5f5b7
+Author: Keith Packard <keithp@keithp.com>
+Date: Thu Nov 16 18:47:34 2017 -0800
+
+ altos/test: Get lisp test building using Makefile-inc
+
+ Instead of re-defining all of the lisp sources and headers
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 2e58b6c380bc6440490c47650fbf11d45b3f2e72
+Author: Keith Packard <keithp@keithp.com>
+Date: Thu Nov 16 18:46:03 2017 -0800
+
+ altos/lisp: More schemisms
+
+ Add 'if'.
+ setq -> set!, but doesn't define new variables
+ def -> define
+ Add pair? and list?
+ Add eq? and eqv? as aliases for =
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 0ced351c8f4449f7086b04e42c822d649f040d1f
+Author: Keith Packard <keithp@keithp.com>
+Date: Thu Nov 16 18:41:18 2017 -0800
+
+ altos/lisp: Add 'else' sematics to cond
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit b3b4731fcb89cb404433f37a7704a503567c43bd
+Author: Keith Packard <keithp@keithp.com>
+Date: Thu Nov 16 17:49:47 2017 -0800
+
+ altos/lisp: Add scheme-style bools (#t and #f)
+
+ Cond and while compare against #f, just like scheme says to.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit bd881a5b85d7cd4fb82127f92f32e089499b50cb
+Author: Keith Packard <keithp@keithp.com>
+Date: Thu Nov 16 13:02:07 2017 -0800
+
+ altos/lisp: Add non-cons cdr support
+
+ The cdr of a cons can be any value; add support for lexing and
+ printing them.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 50a095fbe828b6ec3159d27930712df6b1b519b4
+Author: Keith Packard <keithp@keithp.com>
+Date: Sat Nov 11 21:29:11 2017 -0800
+
+ doc: Update for 1.8.3
+
+ Also added a pile of docinfo files for older release notes files.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 23cf8fb4d5745ad76d9517c9702d03d10c58144a
+Author: Keith Packard <keithp@keithp.com>
+Date: Sat Nov 11 20:52:01 2017 -0800
+
+ altos: Fix new GCC warnings
+
+ * Duplicate 'const' in test code.
+ * Mis-formatted loop in kf_rem_pio2
+ * Unused 'one' in sf_cos
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit f3b279141cd30ad6a212ce75f5a7c2b8e3d33870
+Author: Keith Packard <keithp@keithp.com>
+Date: Sat Nov 11 20:50:45 2017 -0800
+
+ altos: Fix inverted test for corrupt flight log
+
+ Was reporting correct flight log as corrupted. Oops.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 9a7b4f02ad32ca43a45ed9fe446b8db96e60b5e5
+Author: Keith Packard <keithp@keithp.com>
+Date: Sat Nov 11 20:49:20 2017 -0800
+
+ altoslib: Improve EEprom download
+
+ * Catch and report CRC errors
+ * Deal with corrupted flight records
+ * Add ability to immediately graph new data
+ * Check before overwriting existing files
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 10834eb60f7a44fee159d9e9ad5ffb2e013fe9cf
+Author: Keith Packard <keithp@keithp.com>
+Date: Sat Nov 11 20:46:45 2017 -0800
+
+ altoslib: Remove spurious semicolon in AltosReplayReader.java
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit e80005ea63bb9b1eee33a8876ad74ed5d50478ed
+Author: Keith Packard <keithp@keithp.com>
+Date: Sat Nov 11 20:44:27 2017 -0800
+
+ altoslib: Don't write KML record when height data is missing
+
+ This avoids a crash dealing with corrupted flight data
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit a2097545dec62cd0970725bf690128dad6baf22e
+Author: Keith Packard <keithp@keithp.com>
+Date: Sat Nov 11 16:38:40 2017 -0800
+
+ altos/test: Adapt flight test to int16_t flight number type
+
+ Flight numbers are now limited to 32767 to allow for negative values
+ for corrupted slots.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 5b6805d1a6a91a26a1892f414a99f0184871ac1a
+Author: Keith Packard <keithp@keithp.com>
+Date: Sat Nov 11 16:08:32 2017 -0800
+
+ altosuilib: New line styles and colors for graphs. Selectable line width
+
+ Improve the readability of graphs by offering a better selection of
+ colors and adding line styles. Let the user configure the line width
+ as desired.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 82e552d194216b41d27d805bee2947127c2d555b
+Author: Keith Packard <keithp@keithp.com>
+Date: Thu Nov 2 09:12:18 2017 -0700
+
+ altos/stm: Add AO_EXTI_MODE_PULL_NONE
+
+ This is clearer than using '0'.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 5460d7ff46116901bceacd43282b406c446dded5
+Author: Keith Packard <keithp@keithp.com>
+Date: Thu Nov 2 09:11:39 2017 -0700
+
+ altos: whitespace cleanup in ao_adc_stm.c
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 83929cd290279963b01b2ccd52c70d61bdeff6b0
+Author: Keith Packard <keithp@keithp.com>
+Date: Sun Oct 22 15:44:32 2017 -0500
+
+ altos: Share common logging code. Deal with corrupt initial flight records
+
+ Move common logging APIs from per-format files into ao_log.c. Then,
+ change that code to check the first log record in a slot (containing
+ the flight number) to see if it's invalid and deal with it. That
+ involves not re-using that slot, and allowing it to be erased.
+
+ Corrupted log blocks are reported with a negative flight number.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 256ddea8c430b4b5dcb8bb95c19ad26032129e1b
+Author: Keith Packard <keithp@keithp.com>
+Date: Sun Oct 22 15:43:07 2017 -0500
+
+ altos: Define AO_LOG_FORMAT in */ao_pins.h. Use in ao_cmd.c
+
+ Instead of having a global variable define the log format, use a macro
+ instead to save data space.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 15af16ad21f67019065763a93d52cea6097a69d1
+Author: Keith Packard <keithp@keithp.com>
+Date: Sun Oct 22 15:39:25 2017 -0500
+
+ altos: Remove cross-block storage I/O on cc1111
+
+ We don't ever need to be able to do storage read/write across chunks
+ of flash on the old cc1111 products, so remove the loops that support
+ it to save space.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 749400fd244eba38806c623d2a35722642230698
+Author: Keith Packard <keithp@keithp.com>
+Date: Sun Oct 22 14:04:09 2017 -0500
+
+ altoslib: Move temp GPS API from cal_data to data_listener
+
+ This makes the API more consistent, and means that the listener is
+ responsible for mangaing the temp gps state. In particular, the
+ AltosDataListener set_gps API now calls the cal_data function.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit e98235e314ac764509af26c93da9e6d1de8184ea
+Author: Keith Packard <keithp@keithp.com>
+Date: Sat Oct 14 12:18:26 2017 -0700
+
+ altoslib: Save separate config for local and remote. Use in idle
+
+ When using the remote link, there are two separate configuration data
+ blocks, that for the local device and for remote. Make the link report
+ both versions, depending on whether it is in remote mode or not.
+
+ Request config data in remote mode when running idle monitoring so
+ that the presented data is for the remote device, not the local one.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 964a14568b73296194f84c728cc7e01d6f0e2f64
+Author: Keith Packard <keithp@keithp.com>
+Date: Sat Oct 14 12:05:07 2017 -0700
+
+ altoslib: Report un-adjusted ground accel in idle IMU monitor
+
+ The ground accel is the basis of the accel adjustment, so it needs to
+ be delivered in un-adjusted form.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 4431f70044f4e1120d606f0ded1845349295d68e
+Author: Keith Packard <keithp@keithp.com>
+Date: Thu Oct 12 00:31:26 2017 -0700
+
+ altos: Add MPU9250 support to self test and data
+
+ The remaining hooks to make the MPU9250 work in flight.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 77d1aee917306ad59492c4c8352fe2125b430d0c
+Author: Keith Packard <keithp@keithp.com>
+Date: Thu Oct 12 00:30:23 2017 -0700
+
+ altoslib: Fix time series filter window computation
+
+ Small floating point rounding errors could lead to NaNs.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit e04679ba52761d5531037117a21ab1f1896358b0
+Author: Keith Packard <keithp@keithp.com>
+Date: Thu Oct 12 00:29:07 2017 -0700
+
+ altoslib: Don't crash if there's no GPS coord to write KML
+
+ Just check for null before writing as a precaution.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit a69d5773a63dbe5d6d758cea8eca2bf724e9d672
+Author: Keith Packard <keithp@keithp.com>
+Date: Thu Oct 12 00:26:31 2017 -0700
+
+ altoslib: Allow gps time later than requested if it's first
+
+ When generating a KML file, we want to position markers near the start
+ of the flight section. This is done by looking for a GPS coordinate
+ 'before' the starting point of the flight, which doesn't work well
+ when the first GPS coordinate is later than that. Pick the first point
+ after the chosen time if there isn't an earlier one.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 9d7bb706918fd7d6db77eab21931b4fc74cb9105
+Author: Keith Packard <keithp@keithp.com>
+Date: Thu Oct 12 00:14:30 2017 -0700
+
+ altos: Add MPU9250 driver (accel/gyro only for now)
+
+ This is almost an exact copy of the MPU6000 driver, just a few minor
+ register changes.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit c8dbfff65dd61e42d0a02158dcb520e7710ef87e
+Author: Keith Packard <keithp@keithp.com>
+Date: Sun Oct 8 18:50:59 2017 -0700
+
+ altos: Stop storing pyro fired status in config block
+
+ We already have the fired status saved in the ao_pyro_fired variable,
+ so just use that to detect whether a channel has already been fired.
+
+ Fixes possible cases where the pyro config data gets written back to
+ eeprom with the fired bit set, which then inhibits the channel during
+ flight.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 5d82209122e3b797a7345f6ad5b6710832fcdd4a
+Author: Keith Packard <keithp@keithp.com>
+Date: Thu Oct 5 16:46:08 2017 -0700
+
+ Set version to 1.8.2.1
+
+ Testing KML export changes at TRA
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 7e971b45f22aa77421061ff2925e0458835014b2
+Author: Keith Packard <keithp@keithp.com>
+Date: Wed Oct 4 13:44:31 2017 -0700
+
+ altoslib: Missing file for filter additions.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 2f779d318753b73463f7166977453ab5533e5921
+Author: Keith Packard <keithp@keithp.com>
+Date: Wed Oct 4 13:43:45 2017 -0700
+
+ altosuilib: Add 'show marker' button to graphs
+
+ Provides a marker at each actual data point which can be useful for
+ sparse data sets like telemetry with poor reception.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 730ee7bf91f607ece42c010a10c53d0013492b96
+Author: Keith Packard <keithp@keithp.com>
+Date: Wed Oct 4 13:42:16 2017 -0700
+
+ altoslib: Adapt KML output to make TRA record people happier
+
+ Provide two paths, one using GPS data the other baro. Replace separate
+ path segments for each state with markers so that the path is a single
+ unit, able to be displayed in the elevation profile widget.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 98dc29a7a964f8d653b73989c6751695d168844c
+Author: Keith Packard <keithp@keithp.com>
+Date: Mon Oct 2 19:33:37 2017 -0700
+
+ altoslib: Add user-selectable filter width for data smoothing
+
+ Also switch smoothing window to Kaiser and change default accel filter
+ width to 1 second instead of 4 seconds.
+
+ Now users can play with the filter and see what it does.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit d75e8b9046295051c91696461e8d5f59c8260ccc
+Author: Keith Packard <keithp@keithp.com>
+Date: Mon Oct 2 17:02:18 2017 -0700
+
+ altosuilib: Show raw tick values in graph and info table
+
+ Not terribly useful, but did help validate firmware handling of tick
+ wrapping, so we'll keep it.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit c6be13e8ef80e5afc836e04cbfe4cb17631540e4
+Author: Keith Packard <keithp@keithp.com>
+Date: Mon Oct 2 16:58:53 2017 -0700
+
+ altoslib: Allow early bail-out on bad telemetry CRC
+
+ Check the CRC status in the packet before creating a new telemetry
+ object.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 770998be2c15dd41a63520d0c8747d7cf32ec447
+Author: Keith Packard <keithp@keithp.com>
+Date: Mon Oct 2 16:57:15 2017 -0700
+
+ altos: Allow pyro config name to end with newline, not just space/tab
+
+ A pyro config like 'Descending' has no value associated. When it is at
+ the end of the line, allow a newline to terminate the name instead of
+ just a space.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit de2b6ec1cdfd48c948bff7edbfe2540440429b1b
+Author: Keith Packard <keithp@keithp.com>
+Date: Mon Oct 2 16:55:18 2017 -0700
+
+ altoslib,altosuilib,altosui: log_format/device_type TeleGPS selects stateless
+
+ When the device being analyzed has no flight state, we want to use the
+ 'stateless' state so that the UI can display reasonable
+ information. This bit was lost in the recent AltosState shuffle and
+ this patch brings it back.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 322c1abead39cb398380dff384cd274c19dd81dd
+Author: Keith Packard <keithp@keithp.com>
+Date: Mon Oct 2 13:55:57 2017 -0700
+
+ altosuilib: Don't drain voice when terminating display
+
+ If the voice thread is wedged (as with PulseAudio and un-patched
+ freetts 1.2.2), we'll get stuck here and the UI will freeze up.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit cfc09e8f1f263595972cbb6af23f22e2d749c744
+Author: Keith Packard <keithp@keithp.com>
+Date: Tue Sep 26 18:00:36 2017 -0700
+
+ altoslib: Add tilt and pyro data to CSV export
+
+ It's now version 6. Also removed duplicate time values and made radio
+ values conditional on having radio data.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit df39a30c762d57c7d04110e054f74d50fa8d85de
+Author: Bdale Garbee <bdale@gag.com>
+Date: Tue Sep 19 11:56:52 2017 -0600
+
+ don't exit on dfu-util errors, it's not reliable about reporting success
+
+commit 8124109e0b455c9d8d583f4d985b93d23d7b1350
+Author: Bdale Garbee <bdale@gag.com>
+Date: Mon Sep 18 21:24:52 2017 -0600
+
+ tweak Releasing based on 1.8.2 release experience
+
+commit 216ea6388a75c46891dc4687a2eb0c97dc63b136
+Author: Bdale Garbee <bdale@gag.com>
+Date: Mon Sep 18 20:46:04 2017 -0600
+
+ releasing 1.8.2
+
+commit 60666630789b6925d7e16160ebdc88ccd23f51de
+Author: Bdale Garbee <bdale@gag.com>
+Date: Mon Sep 18 20:43:14 2017 -0600
+
+ be more aggressive about removing and ignoring .mdwn files
+
+commit 1ece6e6fd3faaae3f6c6d434497eb04235939dc3
+Author: Bdale Garbee <bdale@gag.com>
+Date: Mon Sep 18 20:43:14 2017 -0600
+
+ be more aggressive about removing and ignoring .mdwn files
+
+commit b12e982259817328e348f1aaa91c5c824891e7b9
+Merge: b1cf0dab e87d56b6
+Author: Bdale Garbee <bdale@gag.com>
+Date: Mon Sep 18 20:35:00 2017 -0600
+
+ Merge branch 'master' into branch-1.8
+
+commit e87d56b665ca30a3e5920c23cd60c99b84341aa2
+Author: Keith Packard <keithp@keithp.com>
+Date: Mon Sep 18 18:51:51 2017 -0700
+
+ Update release version and date
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit a54b3330574dd130540e482a06a3f8d7ca652b6c
+Author: Keith Packard <keithp@keithp.com>
+Date: Mon Sep 18 18:43:00 2017 -0700
+
+ Update docs for 1.8.2 release
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit d0c1ebc43a9c5bb0a3503d33978a5e7bc87057fe
+Author: Keith Packard <keithp@keithp.com>
+Date: Mon Sep 18 18:51:18 2017 -0700
+
+ Add short section on accelerometer calibration
+
+commit 60cadbc85949adf464be16a5cf8ce2c24d67bedf
+Author: Keith Packard <keithp@keithp.com>
+Date: Mon Sep 18 14:40:37 2017 -0700
+
+ altos/telegps-v2.0: Enable USB connect monitoring
+
+ Disable radios when plugged in to USB to save power and avoid being
+ noisy.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 6e4c104c28952f2010c7b1cbc9ce59e148ab2d8f
+Merge: 63eeaada 4f2cbe0c
+Author: Bdale Garbee <bdale@gag.com>
+Date: Mon Sep 18 16:01:43 2017 -0600
+
+ Merge branch 'master' of ssh://git.gag.com/scm/git/fw/altos
+
+commit 63eeaada85cb9ddccb0fa9b2d751cc8f46399d9c
+Author: Bdale Garbee <bdale@gag.com>
+Date: Mon Sep 18 16:01:21 2017 -0600
+
+ production TeleGPS v2.0 use a 16Mhz crystal for the SOC
+
+commit 4f2cbe0c537c9f417aae310cc3b89f84e0915103
+Author: Keith Packard <keithp@keithp.com>
+Date: Mon Sep 18 09:57:41 2017 -0700
+
+ altoslib: Avoid crashing when computing stats for empty flight logs
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit b9a00856aa4cf55ae4a143288058094ef8061134
+Author: Keith Packard <keithp@keithp.com>
+Date: Mon Sep 18 09:57:06 2017 -0700
+
+ telegps: Fix up TeleGPS UI bits after accel cal changes
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 95952059bbb50b5f22460418df003a87c8bd3271
+Author: Keith Packard <keithp@keithp.com>
+Date: Tue Sep 12 15:47:43 2017 -0700
+
+ test/ao_flight_test: Show recorded pyro firing
+
+ Can compare with computed values.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 28a2db68e4806383cfaa7075d454c35cade9633a
+Author: Bdale Garbee <bdale@gag.com>
+Date: Sun Sep 17 12:41:50 2017 -0600
+
+ publish support for TeleGPS v2.0
+
+commit ad61e277069217d98400e884d3c173357d2343ed
+Author: Bdale Garbee <bdale@gag.com>
+Date: Thu Sep 14 10:51:18 2017 -0600
+
+ deal with cheap BT dongle that shows multiple copies of unit in lescan output
+
+commit 5666a3c9427324ad8f92e21c5f9017436b36a82a
+Author: Keith Packard <keithp@keithp.com>
+Date: Tue Sep 12 14:02:11 2017 -0700
+
+ altosuilib: Make steps in accel cal default button
+
+ This way you can just hit return through the process.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 441056b01abcf9287f61f425cf29fc4b1603c619
+Author: Keith Packard <keithp@keithp.com>
+Date: Tue Sep 12 13:43:06 2017 -0700
+
+ altos/test: Handle new eeprom file format. Give up on telem files.
+
+ Parse eeprom config using libjson-c, then read the hex values into a
+ giant blob.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit be44d33f5e94b8c4180adb275ec83cc70852db48
+Author: Keith Packard <keithp@keithp.com>
+Date: Tue Sep 12 13:41:11 2017 -0700
+
+ altos: Fix debug printf in ao_pyro for state >=
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 10d14146ef84fbe4670454bc0996854a4066cfea
+Author: Keith Packard <keithp@keithp.com>
+Date: Tue Sep 12 13:40:06 2017 -0700
+
+ chaoskey: Wait for input data to stabilize before using it
+
+ The ADC data takes a while to start working after power on; wait for
+ the range of input values to look reasonable before using the data.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 8284ba8bf78aade8f9d8f711cfefe2010ce81066
+Author: Keith Packard <keithp@keithp.com>
+Date: Tue Sep 12 13:38:36 2017 -0700
+
+ doc: Add forward reference from 'idle' description to idle entry steps.
+
+ This provides a reminder that entering idle mode takes specific steps
+ which differ between models.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 8960cb525ef43c2262c7854b9a6f08237b3ea05b
+Author: Keith Packard <keithp@keithp.com>
+Date: Tue Sep 12 13:37:24 2017 -0700
+
+ altosui: Handle missing GPS when graphing mega/metrum data
+
+ These have GPS, but if we never get a valid packet, then there won't
+ be any final position to display.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit a4dfaf25954134dbdc7229e2de39d4a4c049f285
+Author: Keith Packard <keithp@keithp.com>
+Date: Tue Sep 12 13:37:06 2017 -0700
+
+ altosui: Remove debug printfs in FC config UI
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit bc1cc0db1251e351d862dffbf618d0ce926c389d
+Author: Keith Packard <keithp@keithp.com>
+Date: Tue Sep 12 13:36:24 2017 -0700
+
+ altosdroid: Display serial, call, freq in tracker list
+
+ This makes the list a lot easier to find entries in when it gets long.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 4151c30e1294c0dda3aa02e7ac23b9616f25a4d0
+Author: Keith Packard <keithp@keithp.com>
+Date: Tue Sep 12 13:35:25 2017 -0700
+
+ altoslib: Make receive frequency available in telem data
+
+ This lets AltosDroid record which frequency each station was heard on.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit d84f5e576e83a2b965d0e9752a9bbef100954815
+Author: Keith Packard <keithp@keithp.com>
+Date: Tue Sep 12 13:34:23 2017 -0700
+
+ altoslib: Remove debug stack dump from AltosState
+
+ An empty AltosState is allocated when parsing JSON data; it's not a
+ mistake.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit b48966c3121e1b5d4a659bebcad595d6f1ec5ee5
+Author: Keith Packard <keithp@keithp.com>
+Date: Tue Sep 12 13:33:13 2017 -0700
+
+ altoslib: Correctly parse IMU cal data
+
+ Was trying to match 'IMU call along' instead of 'IMU cal along',
+ causing the line to not match and losing the IMU accel cal values.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit f607a882a50aa6cd9e8e3e74cbaa5bcc1b5fa4a4
+Author: Keith Packard <keithp@keithp.com>
+Date: Wed Sep 6 08:37:12 2017 -0600
+
+ ao-tools/ao-chaosread: Add -Wall -Wextra, clean up results
+
+commit 558a143315f0345b79cc4f22aa4b643fedcded9c
+Author: Keith Packard <keithp@keithp.com>
+Date: Fri Aug 11 23:42:53 2017 -0400
+
+ altosui: Accel calibration UI
+
+ Provides a GUI for re-calibrating accelerometers
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit c9a742db2497d07079f3d4bf383c6246cf80507c
+Author: Keith Packard <keithp@keithp.com>
+Date: Thu Aug 31 20:32:05 2017 -0700
+
+ Bump to version 1.8.1.1/android 16 for altosdroid
+
+ AltosDroid 1.8.1 got released before the latest fix for not storing
+ frequency preferences was made. Make a 1.8.1.1 with a new android
+ release number for that.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 6e85a8244389bffab0744be8dfa90b706f829083
+Author: Bdale Garbee <bdale@gag.com>
+Date: Mon Aug 28 15:09:14 2017 -0600
+
+ need to capture .bin file for telebt-v4.0 loader
+
+commit ccf7ad5a31604e98b34bf16e3da6afb264ad1291
+Author: Bdale Garbee <bdale@gag.com>
+Date: Mon Aug 28 14:01:54 2017 -0600
+
+ a few tweaks to the Releasing document based on experience with 1.8.1
+
+commit b1cf0dab1e28433e06ab02cec033951ea0149ea3
+Author: Bdale Garbee <bdale@gag.com>
+Date: Mon Aug 28 12:05:17 2017 -0600
+
+ releasing 1.8.1
+
+commit b68c0482d4fae8eb54cde1df0e4bcf4c5d272bad
+Author: Keith Packard <keithp@keithp.com>
+Date: Sun Aug 27 22:49:09 2017 -0700
+
+ Version 1.8.1
+
+ Android version 15
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit abe100385cedf2b0734191611d97e794805d0ef4
+Author: Keith Packard <keithp@keithp.com>
+Date: Sun Aug 27 22:48:46 2017 -0700
+
+ doc: Update for 1.8.1
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 4775b1d9b50a8732d66a0ad3b73ff74901a8cb7f
+Author: Keith Packard <keithp@keithp.com>
+Date: Mon Aug 28 00:15:43 2017 -0700
+
+ altos: Don't compute filtered average of height error when HAS_ACCEL
+
+ We only use this for baro-only devices to avoid firing drogue charges
+ at mach transitions; we trust the combination of accel+baro to do the
+ right thing when available.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit dacd4c70700041a018b1f8ba47f22071b9600eaf
+Author: Keith Packard <keithp@keithp.com>
+Date: Mon Aug 28 00:10:04 2017 -0700
+
+ altoslib: Fix freq preference loading
+
+ Allocate throw-away freq array to get the class pointer.
+ Add null-ary AltosFrequency constructor for JSON code.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 7f5f37ac7fb71d3059f639b39315712f90e9bfd6
+Author: Keith Packard <keithp@keithp.com>
+Date: Sun Aug 27 17:37:10 2017 -0700
+
+ altosui: Make --oneline show drogue deploy speed
+
+ Also remove some commented out values.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit dd72c9144b207b12150eb6a7ffb012f217f37374
+Author: Keith Packard <keithp@keithp.com>
+Date: Sun Aug 27 17:35:49 2017 -0700
+
+ altoslib: Compute speed at entry to each state
+
+ Useful to have drogue/main deployment speeds
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 9537a21b6ddb73b9f086858dad9a7b9d05279741
+Author: Keith Packard <keithp@keithp.com>
+Date: Sun Aug 27 17:34:49 2017 -0700
+
+ altoslib: Fix parsing of old TM log GPS sat data
+
+ Attempting to fetch sat data from wrong byte led to array bounds
+ exception.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 92b689bfd78a96ba56f0e1022ba68b7384a9b9b6
+Author: Keith Packard <keithp@keithp.com>
+Date: Sun Aug 27 17:34:07 2017 -0700
+
+ altoslib: Allow for missing product when checking for mma655x inverted
+
+ If there's no product, assume we've got some ancient log file.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 6e244a73d8c2a475416480f83328b7d363693402
+Author: Keith Packard <keithp@keithp.com>
+Date: Sun Aug 27 17:33:38 2017 -0700
+
+ altoslib: Remove debug printf for gyro adjust
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit f5642db4e03856b1f2ffeae6570fcf35fb7d93fb
+Author: Keith Packard <keithp@keithp.com>
+Date: Sun Aug 27 17:32:27 2017 -0700
+
+ altos/test: Fake baro data for flight 12 serial 2093
+
+ This flight had a baro spike due to an accidental drogue charge firing
+ but is otherwise quite useful when testing for various mach delay
+ effects, so fake out the data during that spike.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit bef7c37d1c986cd477367c0c015be61368a788d2
+Author: Keith Packard <keithp@keithp.com>
+Date: Sun Aug 27 17:30:15 2017 -0700
+
+ altos/test: Integrate raw accel to provide speed for comparison
+
+ This can provide a useful visualization of the 'true' vs 'kalman'
+ speed value, as the kalman is necessarily delayed due to the model
+ assuming constant acceleration.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 2dce02efd54ad4051f1ddb94048696e8677dd225
+Author: Keith Packard <keithp@keithp.com>
+Date: Sun Aug 27 17:04:27 2017 -0700
+
+ altos/test: telemetrum baro data is inverted before being written to eeprom
+
+ No need for the test code to invert it during replay
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit ea6fe21d78744d7e6225a56c369d54f7cd956767
+Author: Keith Packard <keithp@keithp.com>
+Date: Sat Aug 26 19:16:47 2017 -0700
+
+ altos: Don't eliminate baro above mach speed, just trust it less
+
+ Instead of completely eliminating the baro sensor above mach speed,
+ just derate it a bit so that the accel will dominate for speed
+ computation and keep the device from false-triggering across mach
+ transitions.
+
+ When we completely ignored the baro sensor above mach, and the flight
+ spent considerable time in that speed range, then the estimated height
+ could be far from the real value. When the estimated speed dropped
+ back down and the baro values were brought back into the computation,
+ then the resulting rapid shift in estimated speed could trigger
+ accidental apogee detection.
+
+ By mixing in a bit of baro data even above mach, we keep the estimated
+ height closer to the baro value and prevent this error, at least in
+ flights measured so far.
+
+ The flight known to have this problem is:
+
+ 2015-09-26-serial-2093-flight-0012.eeprom
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 12ef994a24eb996458092dc35c671d6b824b1576
+Author: Keith Packard <keithp@keithp.com>
+Date: Sun Aug 27 16:57:13 2017 -0700
+
+ altos: Eliminate separate height error filter for accelerometer devices
+
+ We don't use the error value in flight for those models anyways; it's
+ only useful on baro-only hardware.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit f972000642f9c9835a0b7d14155d4c5695455d94
+Author: Keith Packard <keithp@keithp.com>
+Date: Sat Aug 26 19:15:59 2017 -0700
+
+ altosui: Add --oneline mode to briefly summarize flights
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 465bb7242f39f6f8489e5fd52ce88031106c1c76
+Author: Keith Packard <keithp@keithp.com>
+Date: Sat Aug 26 19:15:07 2017 -0700
+
+ altosuilib: Add "Huge" font size
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 3dde7f4d05414ac4907c91c68c88cc1d06233605
+Author: Keith Packard <keithp@keithp.com>
+Date: Sat Aug 26 19:14:10 2017 -0700
+
+ micropeak: Track font changes in raw data display
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit cf20e213f39fb24f15e0ac94307c2d138fcadecb
+Author: Keith Packard <keithp@keithp.com>
+Date: Thu Aug 24 16:45:54 2017 -0700
+
+ altos: Perform time comparisons using 16-bit arithmetic to handle wrap
+
+ Subtracting two 16-bit unsigned values to perform time comparisons
+ yields mystic results unless we carefully cast that to int16_t.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 43e2275250d9c91560a770942f3c06a8f74ed501
+Author: Keith Packard <keithp@keithp.com>
+Date: Sat Aug 12 01:37:07 2017 -0400
+
+ install: Add 'fat-install' target
+
+ This uses the existing --with-fat-dir option and instead of installing
+ everything to that directory, creates a normal ikiwiki hierarchy of
+ files including .mdwn files, whacked release notes html files and all
+ of the appropriate packages.
+
+ One stop shopping for adding the release to the web site.
+
+ Attempted to update Releasing file to match.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit fccfa54bb3b746cecfcdc1fd497cf736bbfe3ef3
+Author: Bdale Garbee <bdale@gag.com>
+Date: Sat Aug 12 00:23:27 2017 -0400
+
+ releasing 1.8
+
+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>