+commit 38bcc2b8b2b560271902eb8a3eba467866a38628
+Merge: 628da1fe c16cb712
+Author: Bdale Garbee <bdale@gag.com>
+Date: Thu Oct 22 16:17:33 2020 -0600
+
+ Merge branch 'master' into branch-1.9
+
+commit c16cb712f5dc2ad42a9bccbfc28f6b70704ccd55
+Author: Bdale Garbee <bdale@gag.com>
+Date: Thu Oct 22 16:17:04 2020 -0600
+
+ update configure.ac for 1.9.6 release
+
+commit 837ef5987a71a51cc42c3410bd440043a34fdd8c
+Author: Keith Packard <keithp@keithp.com>
+Date: Wed Oct 21 22:11:18 2020 -0700
+
+ doc: Mention BMX-160 self-test fix in 1.9.6 release notes
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit f2f10bf2c85ca7ec0cfb71c75a5bf77512072ba8
+Author: Keith Packard <keithp@keithp.com>
+Date: Wed Oct 21 22:01:47 2020 -0700
+
+ libaltos: Add pre-built windows dll binaries
+
+ Current Debian unstable builds versions that don't run on all Windows
+ 10 machines.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit edd50c5397764c8c8091e337f4045c806ff513ea
+Author: Keith Packard <keithp@keithp.com>
+Date: Wed Oct 21 21:45:53 2020 -0700
+
+ doc: 1.9.6 release notes
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 3ace827de5907ee77ffdfcf54b0822a1e65570ea
+Author: Keith Packard <keithp@keithp.com>
+Date: Tue Oct 6 18:54:27 2020 -0700
+
+ altoslib: Don't pass along GPS information when the GPS device is busted
+
+ If the telemetry packet indicates that there's no functioning GPS receiver,
+ then don't pass along those packets so that the UI displays things more accurately.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 29c5336f775eacbfee354000c8b28de1813ede81
+Author: Keith Packard <keithp@keithp.com>
+Date: Tue Oct 6 18:53:38 2020 -0700
+
+ altoslib: Add defines for EasyMotor
+
+ Just USB ids and product names.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit c507e143aac0bc251b02bbe3c812bf81b7026ff7
+Author: Keith Packard <keithp@keithp.com>
+Date: Sat Oct 17 15:29:11 2020 -0700
+
+ altoslib: Clip accelerometer-based speed to >= 0
+
+ Negative vertical speeds computed by axial acceleration aren't
+ sensible, so just clip them to zero so that plots are more useful.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 2a0a683b06fefbf1b17cba2dc1bbe877a19ce9f4
+Author: Keith Packard <keithp@keithp.com>
+Date: Fri Oct 16 20:54:32 2020 -0700
+
+ altoslib: Limit .csv file output to valid fields for EasyMotor
+
+ EasyMotor doesn't have a baro sensor, gyros, mag sensor or igniters.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 17ad31dcc24c66a9f4b3f1a1cd3689fbe5f16874
+Author: Keith Packard <keithp@keithp.com>
+Date: Fri Oct 16 20:53:56 2020 -0700
+
+ altoslib: Easy Motor v2 x axis is inverted
+
+ Provide positive accel values along rocket axis
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 02c7bb11a8a4270e40bd1f42abd00ae849ff7539
+Author: Keith Packard <keithp@keithp.com>
+Date: Fri Oct 16 20:52:48 2020 -0700
+
+ altoslib: Correct ADXL counts_per_g
+
+ When ADXL 375 is used as a 3d accel (as on EasyMotor), need the right
+ counts_per_g to do conversions.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 85e22ee20974792c2376bf11a9f79e17e4008da9
+Author: Keith Packard <keithp@keithp.com>
+Date: Fri Oct 16 15:30:35 2020 -0700
+
+ altoslib: use motor pressure calibration data for EasyMotor
+
+ EasyMotor stores an average sensor value for motor pressure, use that
+ to report pressure above that value.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 6f3e0411acffa7ff8b4b92b68abbe05482f9bf65
+Author: Keith Packard <keithp@keithp.com>
+Date: Fri Oct 16 15:29:12 2020 -0700
+
+ altoslib: Report metric pressure in kPa instead of Pa
+
+ Reduces the magnitude of pressure data when displayed.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 42ff9c7c096ad2b8e9a6152292ab12d315985aff
+Author: Keith Packard <keithp@keithp.com>
+Date: Mon Oct 12 16:48:42 2020 -0700
+
+ altoslib: Add EasyMotor EEPROM support
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 76b595f2daafe10941b380fe74fd12d1467ba029
+Author: Keith Packard <keithp@keithp.com>
+Date: Mon Oct 12 16:47:54 2020 -0700
+
+ altosuilib: Graph motor pressure
+
+ Use a separate axis from atmospheric pressure as the range will be
+ rather different.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 6ac469fb46e9fabfd473b9a3d8bcd92db00b98b2
+Author: Keith Packard <keithp@keithp.com>
+Date: Mon Oct 12 16:46:28 2020 -0700
+
+ altoslib: Add 'motor_pressure' data value
+
+ This value tracks the internal pressure of a motor in Pa.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 41538b1b600eef242d1ede9fe9039d1079f6891a
+Author: Keith Packard <keithp@keithp.com>
+Date: Mon Oct 12 16:40:41 2020 -0700
+
+ altoslib: Add conversion for motor pressure sensor
+
+ This assumes a standard 0.5-4.5 range 1600PSI sensor.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 109e39eb88e5f1fd897d0b818c7654b367ee8522
+Author: Keith Packard <keithp@keithp.com>
+Date: Mon Oct 12 16:40:03 2020 -0700
+
+ altoslib: Initialize gyro offset values to MISSING
+
+ This lets us detect a device without a gyro sensor.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit c5796f686b1bf9e4effd7f9d8dca2ee5d7a38a16
+Author: Keith Packard <keithp@keithp.com>
+Date: Fri Oct 16 20:48:55 2020 -0700
+
+ altos: Reset 3d-accel and motor pressure sums each ground interval
+
+ We're repeatedly averaging 512 ground samples to get up-to-date values
+ for all of the sensors, but we need to clear the sums after each
+ sample interval. The 3d accel values were only cleared if there was a
+ full IMU, not for devices with only an accelerometer like
+ EasyMotor. The motor pressure sum was never cleared.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit f10009b07b651f69014ac5608f3ca29bce874c24
+Author: Keith Packard <keithp@keithp.com>
+Date: Fri Oct 16 12:59:48 2020 -0700
+
+ altos: Add motor pressure calibration data to easy motor log
+
+ Compute an average of ground motor pressure values and store those in
+ the log data in the AO_FLIGHT record.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit a7f1925b81a429d9f387f7e26433326e37c43d4f
+Author: Keith Packard <keithp@keithp.com>
+Date: Fri Oct 16 12:57:07 2020 -0700
+
+ altos: Support negative decimal values on command line
+
+ Add support for leading unary minus for decimal constants.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 6e69377ef31ecff5443177b51d7cd2b084e63523
+Author: Keith Packard <keithp@keithp.com>
+Date: Mon Oct 12 16:55:23 2020 -0700
+
+ altos/test: Clean up easy motor test jig
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit c66f494160bd2e99c01510acdd7e2d6624fc017a
+Author: Keith Packard <keithp@keithp.com>
+Date: Mon Oct 12 16:54:34 2020 -0700
+
+ altos: Log motor pressure and battery voltage for EasyMotor
+
+ These were not logged at all.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 4370b7e7bc48d3f3f3ec94665449f1fde4e9567c
+Author: Keith Packard <keithp@keithp.com>
+Date: Sat Oct 10 22:00:56 2020 -0700
+
+ altos: De-bias height/speed data while on pad
+
+ Save speed/height values from 64 samples ago and subtract them from
+ the current value. This reduces the effect of systematic accelerometer
+ error causing these values to slowly creep when there's no barometric
+ sensor to keep them in check.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit a7d8a0f8b26bf62b63f12110d6d66a4f9da76eae
+Author: Keith Packard <keithp@keithp.com>
+Date: Sat Oct 10 22:54:00 2020 -0700
+
+ altos: Change adxl375 self test parameters
+
+ Try to make it not fail self test while horizontal
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 01b89c384e80990505a5abea18489360052beb70
+Author: Keith Packard <keithp@keithp.com>
+Date: Sat Oct 10 21:56:38 2020 -0700
+
+ altos/easymotor-v2: Add 'through' axis definition
+
+ This is used by the ao_flight_test_code
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 32e0a6e3ee51f3c9bc150bb1a6890a82bcdd050f
+Author: Keith Packard <keithp@keithp.com>
+Date: Sat Oct 10 21:56:06 2020 -0700
+
+ altos/test: Build ao_flight_test_motor
+
+ This tests the flight code in easymotor mode.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 291eddc6376dc414a32aab51d4ee7c4212e3e69d
+Author: Keith Packard <keithp@keithp.com>
+Date: Sat Oct 10 21:55:36 2020 -0700
+
+ altos: Let ao_data.c be used by ao_flight_test
+
+ Just skip the ao headers in that case.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit e48b6689527f51cc589ccd0ee88e2c7bc05747e0
+Author: Keith Packard <keithp@keithp.com>
+Date: Sun Aug 23 18:32:41 2020 -0600
+
+ altos/easymotor-v2: Beep out 'pad mode' repeatedly
+
+ Easymotor doesn't have igniters, so it would have been silent on the
+ pad, which seems bad. Add HAS_PAD_REPORT code which beeps out 'pad'
+ once every five seconds.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 48c8efaae7ce8de8bb0727009436813cd4b560e7
+Author: Keith Packard <keithp@keithp.com>
+Date: Sun Aug 23 18:31:25 2020 -0600
+
+ altos/easymotor-v2: ADXL375 is upside-down compared with other boards
+
+ Clear AO_ADXL375_INVERT to make it work
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit f1ea931ca808b120b5f378269aa9a6e38e90b8af
+Author: Keith Packard <keithp@keithp.com>
+Date: Sun Aug 23 18:15:14 2020 -0600
+
+ altos/stmf0: Fixup for SPI mode support
+
+ The desired SPI mode comes in 'spi_index' and needs
+ to be split out before spi_index is used for pin configuration.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit c1ed5c2249abb7bd1bc85091179d5d208e776da6
+Author: Keith Packard <keithp@keithp.com>
+Date: Sun Aug 23 18:13:42 2020 -0600
+
+ altos/easymotor-v2: Fix beeper config
+
+ The beeper changed pins at some point during the design
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 4cdef1d311d5cdc18550fb51b31c3becf1dd86fa
+Author: Keith Packard <keithp@keithp.com>
+Date: Sun Aug 23 18:12:10 2020 -0600
+
+ altos/easymotor-v2: Use same init order as easymini
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit c2dbbf99e503b9e3cde37af35a8ba33220be187c
+Author: Bdale Garbee <bdale@gag.com>
+Date: Fri Aug 21 20:40:44 2020 -0600
+
+ recover easymotor-v2/flash-loader/ao_pins.h from backups
+
+commit fa4bb77064a2606e82091e3e533dac897912c627
+Author: Keith Packard <keithp@keithp.com>
+Date: Sun Aug 2 13:11:39 2020 -0700
+
+ altos/easymotor-v2: Get easy motor building
+
+ Add some missing files and adjust configuration.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 80a7cdfe3d6256cc86861195a78f422828b4ecc1
+Author: Keith Packard <keithp@keithp.com>
+Date: Sun Aug 2 13:11:16 2020 -0700
+
+ altos/easymotor-v2: Add .gitignore
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 48e0da4b2d1568f9f29058def12dc32d1cff3586
+Author: Keith Packard <keithp@keithp.com>
+Date: Sun Aug 2 13:09:17 2020 -0700
+
+ altos/stmf0: Add spi format configuration options
+
+ This lets different SPI devices use different SPI formats
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 18e24df0353c78ada8cc1d2439729bc2f2676205
+Author: Keith Packard <keithp@keithp.com>
+Date: Sun Aug 2 13:07:01 2020 -0700
+
+ altos: Support accel-only IMU configurations
+
+ This doesn't compute orientation, just allows for calibrating and recording
+ 3-axis acceleration data.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 4006bf474f4fee1e2d47fdc930b3b08b4fecbe24
+Author: Keith Packard <keithp@keithp.com>
+Date: Sun Aug 2 13:06:01 2020 -0700
+
+ altos: Add EasyMotor logging support
+
+ Log EasyMotor sensor data.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 3a3fb807394a534b6d44aa089f3b72a95ff9085d
+Author: Keith Packard <keithp@keithp.com>
+Date: Sun Aug 2 13:04:27 2020 -0700
+
+ altos: Allow use of ADXL375 as IMU
+
+ This lets EasyMotor report all three axes of acceleration and use
+ that for idle detection.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 8ddade934e965e19b760cdde4eb8ecadf6abf70c
+Author: Keith Packard <keithp@keithp.com>
+Date: Sun Aug 2 12:51:16 2020 -0700
+
+ altos/drivers: Add ao_adxl375_accel_to_sample macro
+
+ This converts from acceleration levels to sample counts for use in
+ detecting stability of airframe after landing when no other IMU is
+ present.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit e5e240e764d3bf8196a3f5b5fb1a639ad0723138
+Author: Bdale Garbee <bdale@gag.com>
+Date: Mon Jul 27 14:52:50 2020 -0600
+
+ easymotor: override .gitignore to store Makefiles
+
+commit a0aad75a2a54cd9d478cc44159d7d01b549f806e
+Author: Bdale Garbee <bdale@gag.com>
+Date: Sat Jul 25 18:07:36 2020 -0600
+
+ first cut at EasyMotor v2 .. not compiling yet
+
+commit a8ced69631415e26329594f7f0ae98dec577d1ae
+Author: Keith Packard <keithp@keithp.com>
+Date: Wed Sep 30 15:53:38 2020 -0700
+
+ libaltos: Avoid using strcmp and strchr on windows
+
+ At least one of these caused the library to not load on Windows
+ 10. Work around that by changing the code to use vid/pid instead of
+ matching on the name provided back by the OS.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 2d44477f5ab4ad82ba658eb327c25c61c8056035
+Author: Keith Packard <keithp@keithp.com>
+Date: Wed Sep 30 00:20:24 2020 -0700
+
+ altosui: Include telelco and telefireeight firmware in FAT builds
+
+ AltosUI can reflash these devices, so best to include the firmware
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 2a6c0e80f64e793b68e29a18fafad730b55a06b6
+Author: Keith Packard <keithp@keithp.com>
+Date: Tue Sep 29 23:58:10 2020 -0700
+
+ altos: Fix flash loader map file names
+
+ Make sure these include the product name too.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 6846db985d77c25b4deb5f8a763eec245a0a3a71
+Author: Keith Packard <keithp@keithp.com>
+Date: Tue Sep 29 23:57:26 2020 -0700
+
+ altos: Remove linker map files during 'make clean'
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit f4448213efbafe2df53ad8d62d5be74473b794a2
+Author: Bdale Garbee <bdale@gag.com>
+Date: Wed Sep 30 00:49:14 2020 -0600
+
+ Releasing: updated with changes from 1.9.5 release
+
+commit 628da1fe429045c7c687f8bb96ded7da9f437706
+Author: Bdale Garbee <bdale@gag.com>
+Date: Wed Sep 30 00:18:31 2020 -0600
+
+ releasing 1.9.5
+
+commit f763dfe6a684a16ec40503149adefdc074a63ad0
+Merge: bfe338d1 a1779f94
+Author: Bdale Garbee <bdale@gag.com>
+Date: Wed Sep 30 00:17:03 2020 -0600
+
+ Merge branch 'master' into branch-1.9
+
+commit a1779f9442787dbd5c40edbb476e6b765392196e
+Author: Keith Packard <keithp@keithp.com>
+Date: Tue Sep 29 20:10:38 2020 -0700
+
+ Version 1.9.5
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 67e8e9b5b51e259eda4a669de527111851bab78f
+Author: Keith Packard <keithp@keithp.com>
+Date: Tue Sep 29 22:02:56 2020 -0700
+
+ altosui: Work around lack of actual USB product names on Windows
+
+ Windows doesn't provide an API to get the USB product name for
+ attached devices, it only provides the name listed in the .inf file
+ for each vid/pid. This means that you get 'TeleMega', or 'TeleMega
+ can't isolate the list to the correct version.
+
+ With this fix, at least the '#2' is stripped off, and the matching
+ code restricts itself to showing only TeleMega files instead of all
+ filenames starting with 'tele'.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 9bee7d9b6be861909d8c89767f6eabf007f76612
+Author: Keith Packard <keithp@keithp.com>
+Date: Tue Sep 29 20:08:31 2020 -0700
+
+ altosdroid: Copy generated .apks to bin directory
+
+ This places them in the same location as the previous build system.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 1fa1ba86f6e6e4ff469f0680cdbc39bc806474a4
+Author: Keith Packard <keithp@keithp.com>
+Date: Fri Sep 25 20:06:18 2020 -0700
+
+ doc: Add 1.9.5 release notes
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 2d239b9bf600fac46717980f45de3ca7a242236f
+Author: Keith Packard <keithp@keithp.com>
+Date: Tue Sep 1 18:47:23 2020 -0700
+
+ altoslib: Print more helpful debug messages when checking rom version
+
+ Make sure success and failure include enough info to debug what
+ happened.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 5bdc63a2086c1ffd4c34c9a503af638a47a1d98b
+Author: Keith Packard <keithp@keithp.com>
+Date: Tue Sep 1 18:31:03 2020 -0700
+
+ libaltos: Update to support Mac OS X 10.15 (catalina)
+
+ They decided to break device names reported by USB for some reason,
+ but at least the real names are still available under a different
+ name.
+
+ Also updated the Makefile-standalone to work on my current box;
+ presumably the next time I build this I'll have to update again...
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 583a749724700845d2d3552a0d3a759f16b25cfe
+Author: Keith Packard <keithp@keithp.com>
+Date: Mon Aug 31 20:52:43 2020 -0700
+
+ macosx: Update macosx install script
+
+ Use dialog engine to monitor progress and get sudo password
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit ffbd99545ca0462161c24e0ed86978544f2c28f6
+Author: Keith Packard <keithp@keithp.com>
+Date: Mon Aug 31 15:08:08 2020 -0700
+
+ altosuilib: Make dialogs mostly scrollable
+
+ When screens are too small, some dialogs aren't usable. Fix that by
+ wrapping them all with a scrollable pane.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 521dc6dbf9aa5f7aad7829cd98a815031725ac24
+Author: Keith Packard <keithp@keithp.com>
+Date: Mon Aug 31 15:07:13 2020 -0700
+
+ windows: Point windows users at adoptopenjdk.net by default
+
+ This gives them a free software java which works fine with altosui.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 7fc37f145a6ec3f913e908b6500d1e2c6dd405c8
+Author: Keith Packard <keithp@keithp.com>
+Date: Mon Aug 31 15:05:41 2020 -0700
+
+ macosx: Hack JavaApplicationStub to set freetype properties
+
+ Set the FREETYPE_PROPERTIES environment variable to revert to
+ non-fuzzy text.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 075999e274dd1815b15c0d717d1af4e7717e5da9
+Author: Keith Packard <keithp@keithp.com>
+Date: Mon Aug 31 15:03:57 2020 -0700
+
+ altoslib: Set default logging directory to $HOME/AltusMetrum
+
+ Change from ~/TeleMetrum
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 4e07392c65ec512e3309d89c7465c1406a941b66
+Author: Keith Packard <keithp@keithp.com>
+Date: Mon Aug 31 15:01:18 2020 -0700
+
+ libaltos: Map generic windows device names to actual names
+
+ When we signed the .ini file for our windows 'driver', IDs 28 and 2c
+ hadn't been assigned to EasyMega and EasyMotor, so that file has
+ generic 'AltusMetrum28' and 'AltusMetrum2c' instead. Updating that
+ file is 'hard', so just map the names in the driver instead.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 0d298df9e4cf945f3d0dfdb583af07e498c685a0
+Author: Bdale Garbee <bdale@gag.com>
+Date: Fri Sep 18 11:38:06 2020 -0600
+
+ docs: add explicit admonition about avoiding 'c f' when configuring TeleLaunch
+
+commit 95b31cb200d59917fd3ad03c5c3a0ad99c8a140d
+Author: Bdale Garbee <bdale@gag.com>
+Date: Fri Sep 18 11:34:56 2020 -0600
+
+ docs: fix horrible typo in TeleLaunch configuration section
+
+commit 23e148bb3379969935bcbbbeb6c8dc66c0474f6d
+Author: Keith Packard <keithp@keithp.com>
+Date: Sun Aug 23 15:34:26 2020 -0700
+
+ altosuilib: Allow config to be missing in rom config dialog
+
+ If the configuration data can't be fetched from the target board, it
+ will be missing while building the dialog box. Deal with that.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 2289fd36f7ba76692fe07d2ebc8d7eda33750180
+Author: Keith Packard <keithp@keithp.com>
+Date: Sun Aug 23 15:32:57 2020 -0700
+
+ altoslib: Deal with reflashing EasyMega boards with ancient firmware
+
+ Ancient EasyMega firmware included radio calibration data in the
+ romconfig bits, which has since been removed. That means the config
+ data from those boards will be at a different location than current
+ firmware. Deal with that by poking around in firmware looking for
+ valid bits.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 335e40873c238a67cea2c63d62b73fd9d29e94d2
+Author: Keith Packard <keithp@keithp.com>
+Date: Sun Aug 23 10:55:30 2020 -0700
+
+ doc: Fix spelling error in updating-firmware section.
+
+ Thanks to Timothy Dixon for catching this (copy-and-pasted many times)
+ typo -- could sequentially -> count sequentially.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit c1b754c12ac32ed38a561d8b35dcbdf82beea896
+Author: Keith Packard <keithp@keithp.com>
+Date: Sun Aug 23 10:53:25 2020 -0700
+
+ altosui: Improve configuration save feedback
+
+ Mark window title as (modified) with any unsaved changes. Disable the
+ 'Save' button while the save is happening. Wait for the re-load of
+ configuration values before clearing the '(modified)' state. This lets
+ you see when the flight computer has accepted the updated values.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 10a10667a28f82c24d895e44617e68c7c1848c45
+Author: Keith Packard <keithp@keithp.com>
+Date: Sun Aug 23 10:51:00 2020 -0700
+
+ altoslib: Improve configuration performance over remote link
+
+ Avoid re-setting dongle radio parameters when they haven't changed
+ during device configuration setting. This avoids flipping back and
+ forth from remote to local mode three times during config save.
+
+ Wait for remote end to say 'Saved' before dropping radio link. This
+ ensures that the remote end actually gets the save command before the
+ link is terminated.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit b3297909e58a2709d340f65181c22ef82341afb9
+Author: Bdale Garbee <bdale@gag.com>
+Date: Wed Aug 19 14:38:04 2020 -0600
+
+ fix broken TeleBT turnon script
+
+commit f82e0c5e3a3b3a505e35df23301cdc7dd4b1a869
+Author: Keith Packard <keithp@keithp.com>
+Date: Fri Aug 7 21:51:39 2020 -0700
+
+ altoslib: Flush output when disabling remote
+
+ This speeds up sending data to the other end.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 783a541d661f24f2df1dee86bad2e47950bee9da
+Author: Keith Packard <keithp@keithp.com>
+Date: Fri Aug 7 21:50:38 2020 -0700
+
+ altoslib: Don't fetch config data for every idle status
+
+ This makes fetching data during idle monitor much faster, especially
+ now that fetching the list of stored flights takes so long.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit bbd052c0ad5b99673cf583198e50e6ed351fdfb7
+Author: Keith Packard <keithp@keithp.com>
+Date: Fri Aug 7 21:49:37 2020 -0700
+
+ altos: Allow multiple manual firing of main/drogue channels
+
+ Reset the 'fired' status so that you can trigger these multiple times
+ without needing to reboot.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit f3c8946d992889edabffbab40aead578963de75f
+Author: Keith Packard <keithp@keithp.com>
+Date: Fri Aug 7 21:48:09 2020 -0700
+
+ altos: Don't report inhibited pyro channels as fired
+
+ Inhibiting channels happens when the channel conditions change during
+ the delay period and was done by marking them as already fired. This
+ worked, but the log file would then indicate that the channel had
+ fired when in fact it was inhibited instead. Separate out the inhibited status
+ so that the correct data appears in the log.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 38db8202a4d6ab90305768410f1a37106cc95794
+Author: Keith Packard <keithp@keithp.com>
+Date: Fri Aug 7 20:20:59 2020 -0700
+
+ micropeak: Add support for MicroPeak v2.0
+
+ MicroPeak v2.0 sends a 'unique id' with the log data; capture that and
+ included it in the file name.
+
+ MicroPeak v2.0 can be directly connected to the host using the µP I/O
+ board. Handle that case by sending the 'l' command which will cause
+ the device to dump the log.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 0743e7213729df629aea90b3a5dc904fe397b5cb
+Author: Keith Packard <keithp@keithp.com>
+Date: Fri Aug 7 20:19:28 2020 -0700
+
+ micropeak: Fix top-level window building
+
+ The menu wasn't actually working, and the application would randomly
+ start at the wrong size or crash.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 7dd23ac750226746f340df64107dab84cd7ea113
+Author: Keith Packard <keithp@keithp.com>
+Date: Fri Aug 7 20:18:10 2020 -0700
+
+ micropeak: Check for empty data when fetching log
+
+ Don't pop up the graph window and don't save data from an erased
+ device.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 838d359ed8676f056fe487dad3dfbec34bd65009
+Author: Keith Packard <keithp@keithp.com>
+Date: Fri Aug 7 20:16:55 2020 -0700
+
+ altos/mpusb-v3.0: Make this build again
+
+ It's not built by default and the requirements in the Makefile have
+ changed.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 52eaf4a2480ac0fd367978e423e2f252949f978b
+Author: Keith Packard <keithp@keithp.com>
+Date: Fri Aug 7 20:15:32 2020 -0700
+
+ altos/micropeak-v2.0: Functionally complete.
+
+ Get flight mode working correctly.
+ Offer log dumping from serial link.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 999b3598019c75d77af6ab40c1942a7d57a2ec3c
+Author: Keith Packard <keithp@keithp.com>
+Date: Fri Aug 7 20:13:50 2020 -0700
+
+ altos: Add MicroPeak v2.0 support to ao_log_micro
+
+ Support 4-byte sample count (required for stm32l0 flash storage
+ limitations).
+
+ Mix in log ID on-the-fly so that erased flash parts still report
+ device type.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 476fd2f2c23da427b6b2a68f7d285767a924041e
+Author: Keith Packard <keithp@keithp.com>
+Date: Fri Aug 7 20:12:22 2020 -0700
+
+ altos/stm32l0: Big update in functionality
+
+ Fix baud rate setting in LPUART
+ Add code to turn everything off.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 7b1f4177d42e5e951a7db4289c847d355a785c2a
+Author: Keith Packard <keithp@keithp.com>
+Date: Thu Aug 6 11:05:03 2020 -0700
+
+ altos: Remove support for !HAS_TASK_QUEUE
+
+ This uses a bit more memory, but the amount can be controlled by
+ setting the size of the sleep hash table, which makes this fit on even
+ the smaller devices like the early EasyMini boards.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit a6baf04bae3fe6a6b3da2f456419732ffeb4d056
+Author: Keith Packard <keithp@keithp.com>
+Date: Fri Aug 7 18:17:07 2020 -0700
+
+ altos: Remove ao_led_toggle API from general code
+
+ The generic implementation would need to record LED status as it
+ cannot be read back from the device on most hardware. Just get rid of
+ it and let attiny keep its implementation (which does work).
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 0385d7d68c51e05f5b555749ccc20e3c7c202370
+Author: Keith Packard <keithp@keithp.com>
+Date: Fri Aug 7 18:15:47 2020 -0700
+
+ ao-tools: Add TeleGPS log parsing to ao-eeprom
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 9df66f7589b663899e2c729b884eed4b64e5d4da
+Author: Keith Packard <keithp@keithp.com>
+Date: Thu Aug 6 10:44:49 2020 -0700
+
+ altos: add noreturn attribute to ao_panic
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 33ea5b3658377cea325db285a3e457724f660384
+Author: Keith Packard <keithp@keithp.com>
+Date: Wed Aug 5 22:32:14 2020 -0700
+
+ altos/stm32l0: Add LPUART driver
+
+ This is a simpler UART which micropeak has connected to the LED and
+ we'll use for transmitting the log on power up
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 980d54134bedb64d506c0702f09b4d5277000848
+Author: Keith Packard <keithp@keithp.com>
+Date: Wed Aug 5 17:17:47 2020 -0700
+
+ altos/stm32l0: Provide ao_spi_speed inline as per new clocking API
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 2cd7ecf437bec322e6a201992d0404f31207bd68
+Author: Keith Packard <keithp@keithp.com>
+Date: Tue Jun 23 16:22:21 2020 -0700
+
+ altos/micropeak-v2.0: Finish hardware bring-up
+
+ All of the hardware is working:
+
+ * serial
+ * SPI
+ * ms56067
+ * ADC
+ * flash
+ * clocking
+ * timer
+
+ Now we just need an application
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 845b51d09a6a6f257aebb6db202b12ee1fa9ed7e
+Author: Keith Packard <keithp@keithp.com>
+Date: Tue Jun 23 16:21:57 2020 -0700
+
+ altos/stm32l0: Add adc and flash drivers
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit d2b750a04bbaf428a38fd95891a7ce1cc7d3d2f3
+Author: Keith Packard <keithp@keithp.com>
+Date: Tue Jun 23 16:21:26 2020 -0700
+
+ altos/stm32l0: Remove some unused code in ao_timer.c
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 9dea51ca2174d86d5ab4a8a27179519b34869a36
+Author: Keith Packard <keithp@keithp.com>
+Date: Tue Jun 23 16:20:56 2020 -0700
+
+ altos/stm32l0: Remove some unused code in USART driver
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit db7bf095dfa75858eb12328f104051ea1686e1d5
+Author: Keith Packard <keithp@keithp.com>
+Date: Tue Jun 23 16:20:26 2020 -0700
+
+ altos/stm32l0: Get exti working
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit e58d08a93818b3d60746f0f17b34e96fbf8ba0e3
+Author: Keith Packard <keithp@keithp.com>
+Date: Tue Jun 23 16:19:47 2020 -0700
+
+ altos/stm32l0: Get SPI driver working
+
+ This isn't using DMA, but it seems to work now.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit b0c4df25a0c419eeb53e0e241489c0bd6bee04ef
+Author: Keith Packard <keithp@keithp.com>
+Date: Tue Jun 23 16:19:11 2020 -0700
+
+ altos/stm32l0: Some device addrs were wrong
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 3df505b02fb7d4ba2d40351e658931b02425b74f
+Author: Keith Packard <keithp@keithp.com>
+Date: Tue Jun 23 16:18:27 2020 -0700
+
+ altos/stm32l0: More DMA fixes
+
+ This code still doesn't work, but it should be closer'
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 1e1a84e9ea21ef6037a2127098499e294d293fa8
+Author: Keith Packard <keithp@keithp.com>
+Date: Tue Jun 23 16:17:03 2020 -0700
+
+ altos: Micropeak v2.0 doesn't have a flash loader anymore
+
+ The current version doesn't have USB, so the existing flash loader
+ protocol won't work anyways.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 0375e9840ea1bcc486b56ccb3aaace57875312a7
+Author: Keith Packard <keithp@keithp.com>
+Date: Tue Jun 23 16:16:28 2020 -0700
+
+ altos/ao_storage: Allow apps to #define storage parameters
+
+ This avoids placing them in RAM.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 45b00da14ea814cf8f14dcb2cfaccaddd0fbb38d
+Author: Keith Packard <keithp@keithp.com>
+Date: Tue Jun 23 16:15:28 2020 -0700
+
+ altos/ao_storage: allow erased byte value to be set by application
+
+ External flash is usually 0xff for erased bytes, but other memory may
+ use different values
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 6b4da0492c6d9066c8a118fba9b8ffca02fa84ba
+Author: Keith Packard <keithp@keithp.com>
+Date: Tue Jun 23 16:15:14 2020 -0700
+
+ remove ao_delay_until from ao.h
+
+commit 48bc180211f226b0406aae28a85d5e5ee77455a2
+Author: Keith Packard <keithp@keithp.com>
+Date: Mon Jun 22 17:42:03 2020 -0700
+
+ altos: Add ao_delay_until to ao_notask
+
+ Used on micropeak
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit b4a31f4bba8edee32d4f41780bd62bcfa064f20a
+Author: Keith Packard <keithp@keithp.com>
+Date: Mon Jun 22 17:41:11 2020 -0700
+
+ altos: Move empty ao_mutex_get/put to ao_notask.h
+
+ Make it work on any no-task project.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 7cd8e0aca8ea42a5ff077971e439b0816608b324
+Author: Keith Packard <keithp@keithp.com>
+Date: Sat Jun 20 15:15:35 2020 -0700
+
+ altos: Declare ao_delay_until API in ao.h
+
+ This uses AO_TICK_TYPE which isn't defined until we get to ao.h
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit eea198932b8f12d4729f6138a40489d954d6f93a
+Author: Keith Packard <keithp@keithp.com>
+Date: Sat Jun 20 15:14:26 2020 -0700
+
+ altos: Switch micropeak v2.0 to stm32l0
+
+ The stm32f042 takes too much power for micropeak. Try the stm32l0
+ instead.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit d907b0fe40d31995848e5b207009ba230da2e36e
+Author: Keith Packard <keithp@keithp.com>
+Date: Sat Jun 20 15:13:09 2020 -0700
+
+ altos: Add initial stm32l0 support
+
+ A low-power cortex M0 chip for MicroPeak v2.0
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit b8a9273162b7016afc29f4c98fc3b66324d4c85b
+Author: Keith Packard <keithp@keithp.com>
+Date: Sat Jun 20 15:00:28 2020 -0700
+
+ altos: Fix a bunch of time variables to be AO_TICK_TYPE
+
+ The default tick type is now 32 bits, so all of these
+ variables were mis-typed at 16 bits.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 304dbcbff72c6fa66c71224ecf98ec55447ffff7
+Author: Keith Packard <keithp@keithp.com>
+Date: Fri Aug 7 20:08:34 2020 -0700
+
+ altos/stm: Fix stack validation code
+
+ This is not included by default, and broke at some point.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit ff3a2de3223f5cf3fd87f40cd9961e2c2890a867
+Author: Bdale Garbee <bdale@gag.com>
+Date: Mon Aug 3 12:43:22 2020 -0600
+
+ doc: EasyMotor and EasyTimer have the same mounting geometry as EasyMini
+
+commit 21da942560863ed191953e1af2fbca66bcc29fb8
+Author: Keith Packard <keithp@keithp.com>
+Date: Sun Aug 2 17:29:44 2020 -0700
+
+ altos/stmf0, stm32f0: Call ao_boot_chain to start application
+
+ This used to be done inside ao_boot_check_chain or ao_boot_check_pin,
+ but it made more sense to have it done in _start instead. stm and lpc
+ were adjusted, but stmf0 and stm32f4 were missed.
+
+ This caused boards using this process to wedge in the boot loader.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 6b5e5899d174466552a34a4d8574f0439776240d
+Author: Keith Packard <keithp@keithp.com>
+Date: Sun Aug 2 13:31:58 2020 -0700
+
+ altosui: Re-set pad orientation labels after product name is set
+
+ We don't know what product is being configured until after we query
+ the configuration, which means we need to re-set the orientation label
+ once that has been fetched.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 341157c7415fcf879696c9d8167722a0c5ff264c
+Author: Keith Packard <keithp@keithp.com>
+Date: Wed Jul 29 10:53:39 2020 -0700
+
+ altos: Use new ao_spi_speed inline to set SPI speeds using spec'd frequencies
+
+ Instead of hand-adjusting SPI speeds for each driver and product based
+ on processor supported rates, create an inline function that takes the
+ maximum frequency supported by the device and maps that to a value
+ supported by the SoC. This ensures that we don't accidentally drive devices
+ faster than they want (as could happen with AO_SPI_SPEED_FAST), but do go
+ as fast as possible in every configuration. Using an inline function means
+ the value is computed at compile time.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 202166275ba5220db54f63dcd9366e9115d09c0d
+Author: Keith Packard <keithp@keithp.com>
+Date: Tue Jul 28 23:44:33 2020 -0700
+
+ altos: Support flash parts > 8MB
+
+ The number of sectors (64kB) units in the connected flash
+ part can be larger than 255, so switch from 8-bits to 32-bits for
+ holding this value.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit c56bcc315ac29d001e62859b61ede890a8b7c64f
+Author: Keith Packard <keithp@keithp.com>
+Date: Tue Jul 28 23:43:04 2020 -0700
+
+ altos: Protect shared storage_data with mutex
+
+ As storage_data is shared between all threads, protect it
+ with a mutex to avoid collisions.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 8a24d37e40210b1fb5cdab944c3a6d9ae4e144d7
+Author: Keith Packard <keithp@keithp.com>
+Date: Tue Jul 28 23:40:36 2020 -0700
+
+ altos/stm: Increase MISO DMA priority to very high
+
+ We're still losing incoming bytes in full duplex mode.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 3058ecdeafdee959b1103965f3df4ffcd59683e4
+Merge: 0a53faa8 8ec51d69
+Author: Bdale Garbee <bdale@gag.com>
+Date: Wed Jul 22 15:23:02 2020 -0600
+
+ Merge branch 'master' of ssh://git.gag.com/scm/git/fw/altos
+
+commit 0a53faa8173565b1277d1a35c60022de567c2dce
+Author: Bdale Garbee <bdale@gag.com>
+Date: Wed Jul 22 15:22:21 2020 -0600
+
+ ao-bringup: ensure TeleMega turnon scripts are using the right test versions
+
+commit 8ec51d698921d07c394e6e0e48ac5d587f70ece8
+Author: Keith Packard <keithp@keithp.com>
+Date: Wed Jul 22 09:04:30 2020 -0700
+
+ altos: Add 'booster' mode for dual-deploy igniters
+
+ Booster mode triggers the 'main' channel at first motor burnout
+ allowing the use of a simple flight computer in the booster while
+ providing both a separation charge and an apogee event for recovery.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit d0c0dec140b8fa847704c9a22a39d254445188b9
+Author: Keith Packard <keithp@keithp.com>
+Date: Wed Jul 22 08:57:05 2020 -0700
+
+ altos: Use state transitions to directly drive igniters
+
+ Instead of a separate igniter API, have the igniter code monitor
+ flight state changes to trigger igniter events. This simplifes the
+ code while allowing further changes in the igniter code.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 6ff8e55581ca85b9cc892806a2481d57a65e8bae
+Author: Keith Packard <keithp@keithp.com>
+Date: Wed Jul 22 08:56:10 2020 -0700
+
+ Releasing: save .map files too
+
+ These are useful to debug issues with linker scripts or library problems
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 4c5942fb082811f136322ec26de615cdb7e17580
+Author: Keith Packard <keithp@keithp.com>
+Date: Thu Jul 16 10:23:34 2020 -0700
+
+ Add support for TLS if needed
+
+ Define USE_TLS if you want TLS support from altos.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 8066ce73d96f85efe7f5e51b1576b5fd0ff9565e
+Author: Keith Packard <keithp@keithp.com>
+Date: Thu Jul 16 09:29:52 2020 -0700
+
+ altosui: Spurious ; in altos-windows.nsi.in kept out TM v3.0 ihx
+
+ Looks like a semicolon got stuck in this file, which commented out the
+ TeleMetrum v3.0 firmware from being included in the windows build
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit bfe338d11965d2d1715bdd81d92ef32f1b5ff9fa
+Author: Bdale Garbee <bdale@gag.com>
+Date: Thu Jul 2 20:21:19 2020 -0600
+
+ releasing 1.9.4
+
+commit 8359fcc23a93a37ee3aee4c5d2ef183f18ea3f27
+Merge: b95d6674 9b62f683
+Author: Bdale Garbee <bdale@gag.com>
+Date: Thu Jul 2 20:20:59 2020 -0600
+
+ Merge branch 'master' into branch-1.9
+
+commit 9b62f683ff770970a87444dc25522fd771079333
+Author: Keith Packard <keithp@keithp.com>
+Date: Thu Jul 2 15:26:10 2020 -0700
+
+ Version 1.9.4
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit f74016150880265b3edb70637a6be3e6499432de
+Author: Keith Packard <keithp@keithp.com>
+Date: Thu Jul 2 15:18:56 2020 -0700
+
+ doc: Doc updates for 1.9.4
+
+ Add release notes
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit b08a793fb6e6167d635bfbd31605a43db1f5ac5d
+Author: Keith Packard <keithp@keithp.com>
+Date: Thu Jul 2 15:24:01 2020 -0700
+
+ altos: Make AO_STORAGE_TEST use a separate buffer
+
+ The storage test code needs a buffer which can hold an entire erase
+ block from memory, which means 256 bytes.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 651c66ce117f479158fb0eebd9af6d73f0d9875a
+Author: Keith Packard <keithp@keithp.com>
+Date: Thu Jul 2 15:11:42 2020 -0700
+
+ altos: Reduce flash temp buffer to make space for Em v1.0 ISR stack
+
+ EasyMini has limited RAM; small enough that increasing the size of the
+ storage buffer from 128 to 256 bytes left too little space at the top
+ of memory for the interrupt stack, causing EasyMini v1.0 to crash at
+ boot.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 35b69569472b00e6937a5d3136d0c400f6b0378f
+Author: Keith Packard <keithp@keithp.com>
+Date: Mon Jun 22 17:33:08 2020 -0700
+
+ Add telemetrum v3.0 firmware to release
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit f337aecd0370f81c84c84857e1b6325350d96a81
+Author: Bdale Garbee <bdale@gag.com>
+Date: Tue Jun 16 12:28:39 2020 -0600
+
+ ao-bringup: first cut at turn-on scripts for EasyTimer v1
+
+commit b95d6674d29534363c1d8f46280c028864bdca10
+Author: Bdale Garbee <bdale@gag.com>
+Date: Mon Jun 15 20:34:50 2020 -0600
+
+ releasing 1.9.3
+
+commit f31d842d0e07a1893441cb89fb287b31b86d28c1
+Merge: 0fd503fb f615725c
+Author: Bdale Garbee <bdale@gag.com>
+Date: Mon Jun 15 20:26:35 2020 -0600
+
+ Merge branch 'master' into branch-1.9
+
+commit f615725cb6f963cf46715e936e1d60ce7866c3bb
+Author: Keith Packard <keithp@keithp.com>
+Date: Mon Jun 15 19:11:49 2020 -0700
+
+ Version 1.9.3
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 765d4c96510c823b4e9410c55ba8466438846029
+Author: Keith Packard <keithp@keithp.com>
+Date: Sat Jun 13 22:50:40 2020 -0700
+
+ doc: Update doc for 1.9.3
+
+ Add release notes.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 4ab5855abccf704cc4cdbafb0e995de0a0162af5
+Author: Keith Packard <keithp@keithp.com>
+Date: Sat Jun 13 21:37:44 2020 -0700
+
+ Update 1.9.3 release notes
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit d304f0ea2bfc48abc8c310828aa10c6d642065d0
+Author: Keith Packard <keithp@keithp.com>
+Date: Sun Jun 14 00:04:31 2020 -0700
+
+ altos: Leave floating printf enabled on m3 devices
+
+ These devices all use floating point computations, so leave the
+ floating point printf included in case they print one of those
+ values. If we run short on flash space, we can switch back.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 91b6d1e56a37a2cfae53c3727feaaa40505f48d9
+Author: Keith Packard <keithp@keithp.com>
+Date: Sat Jun 13 23:39:00 2020 -0700
+
+ altos: Fix printf format mis-matches
+
+ Lots of values passed to printf are 'long' instead of 'int', so
+ fix the formats to use the right size indicator.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit d0adf3f44b4a1b4bfc966dd4841c74157f60d604
+Author: Keith Packard <keithp@keithp.com>
+Date: Sat Jun 13 23:36:13 2020 -0700
+
+ altos: Remove newlib-nano defines from Makedefs.in
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 4802fe6dcae0e57c2e992dde008e3bcc84ea8d7f
+Author: Keith Packard <keithp@keithp.com>
+Date: Sat Jun 13 23:13:35 2020 -0700
+
+ altos/test: Ignore ao_flight_test_mini binary
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit f550b645438e9f41afe0a45ff09caf05cf20003f
+Author: Keith Packard <keithp@keithp.com>
+Date: Sat Jun 13 23:12:55 2020 -0700
+
+ map-server: Manifest files are generated now
+
+ Ignore in .gitignore
+ Remove in 'make clean'
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 52e0efd79e9043cde384089863920986a7331764
+Author: Keith Packard <keithp@keithp.com>
+Date: Sat Jun 13 23:11:49 2020 -0700
+
+ Add EasyTimer firmware to packages and Releasing
+
+ Make sure we include EasyTimer bits where required
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 00646d2700a2f4cf500e716e5a111057e3820475
+Author: Keith Packard <keithp@keithp.com>
+Date: Sat Jun 13 23:09:54 2020 -0700
+
+ Check for picolibc when testing arm compilers
+
+ Remove configuration checks for newlib as picolibc doesn't need
+ separate configuration variables.
+
+ Make sure test program actually links as this tests to make sure
+ picolibc is working.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit b9cc05bd3d417c957f47a64493f4a22caf660c55
+Author: Keith Packard <keithp@keithp.com>
+Date: Sat Jun 13 22:40:42 2020 -0700
+
+ doc: Update for EasyTimer
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit d2eee4b8a3f358e2d649096149f3cedc1a39927e
+Author: Keith Packard <keithp@keithp.com>
+Date: Sat Jun 13 22:39:35 2020 -0700
+
+ doc: Avoid mis-interpretation of '+' in device wiring tables
+
+ Looks like asciidoctor does something magic with '+' characters in
+ table contents. Avoid this by using +++. Sigh.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit d779d8e5b1106aaec6170761e6f5bd4e8d5ac6e7
+Author: Keith Packard <keithp@keithp.com>
+Date: Tue Jun 9 11:48:17 2020 -0700
+
+ altos: Fix HAS_FLIGHT_DEBUG for easytimer
+
+ Remove baro-specific bits of the debug output when
+ there's no barometer.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit d9c84d834f7fb4f36cee815dec2642737f73edc4
+Author: Keith Packard <keithp@keithp.com>
+Date: Tue Jun 9 11:47:22 2020 -0700
+
+ altos: Don't include baro-specific config values for easytimer
+
+ These settings aren't used on easytimer, so don't include them in the
+ configuration system. This makes sure they don't appear in altosui.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 97cd271b3febf36d3e9943cea8d74332a128060c
+Author: Keith Packard <keithp@keithp.com>
+Date: Tue Jun 9 11:46:31 2020 -0700
+
+ altosui: Remove six-axis pad orientation for easy timer
+
+ Wait until easytimer actually has six-axis support
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 2781c187d58955bbac5c9fcf498c3b46a84a13d5
+Author: Keith Packard <keithp@keithp.com>
+Date: Tue Jun 9 11:45:53 2020 -0700
+
+ altoslib: Fix easytimer voltage conversions
+
+ Battery and pyros all use the same circuit (100k/27k).
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit b00a155bef319984ec2cf11898355edf94348a4a
+Author: Keith Packard <keithp@keithp.com>
+Date: Mon Jun 8 22:08:28 2020 -0700
+
+ Add some release note notes
+
+commit 869bc258b727d2046835ac52a361d2ef529895ee
+Author: Keith Packard <keithp@keithp.com>
+Date: Mon Jun 8 20:55:28 2020 -0700
+
+ altoslib: Add EasyTimer idle monitor support
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit b07ca2827a498e6dd3c6b62819f71679291f9acc
+Author: Keith Packard <keithp@keithp.com>
+Date: Fri Jun 5 17:15:10 2020 -0700
+
+ Add EasyTimer configuration support
+
+ Needed six-axis pad orientation support
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit fa30825d015d92bdbc95d2684386beef9fe9dc01
+Author: Keith Packard <keithp@keithp.com>
+Date: Mon Jun 8 21:26:23 2020 -0700
+
+ altos: Leave accel data in ring raw; swap for orientation on fetch
+
+ Instead of re-writing the acceleration data in the ring to adjust for
+ pad orientation, just leave it alone and flip it each time it is
+ fetched. Much simpler this way.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit c246a366a6e0117e70abafc30db71c0545b88f6f
+Author: Keith Packard <keithp@keithp.com>
+Date: Mon Jun 8 21:05:17 2020 -0700
+
+ altos: Handle flight_log_max not being multiple of ao_storage_block
+
+ In this case, flight records start in the middle of an erase block, but
+ now end at the erase block before the next flight.
+
+ When checking for an empty log slot, the entire erase block containing
+ the start of the flight is checked to make sure it's clear, skipping
+ it if not.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 89726f5b1adceb243c5e2d5c958fc13c10f9a2d0
+Author: Keith Packard <keithp@keithp.com>
+Date: Mon Jun 8 21:03:31 2020 -0700
+
+ altos: Round selected log size down to ao_storage_block multiple
+
+ There was some (broken) code that complained if the value set wasn't
+ correct, that has been replaced by code that accepts any value and
+ just rounds it down to a multiple of ao_storage_block. The code also
+ stops complaining when set to the current value when storage isn't
+ empty.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 936eceded2d08f4eb7318b28bd1be6cd3b06a7b3
+Author: Keith Packard <keithp@keithp.com>
+Date: Mon Jun 8 21:01:31 2020 -0700
+
+ altos: Move ao_storage_erase to shared code. Add len
+
+ This makes ao_storage_erase take an arbitrary length. The new version
+ erases each storage block if there's any un-erased data present, and
+ then also checks after erasing to make sure the block is clear.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit e142c4bd6f2fbab74fb7b7cea7e9a19234ed0123
+Author: Keith Packard <keithp@keithp.com>
+Date: Mon Jun 8 20:52:09 2020 -0700
+
+ altosui: Adjust max log setting for storage block size
+
+ Need to round log sizes down to a multiple of the block size so that
+ erasing works sensibly on the device.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit e4c93942bbde7a538d1dca114f20dc827275a8e1
+Author: Keith Packard <keithp@keithp.com>
+Date: Mon Jun 8 20:49:42 2020 -0700
+
+ altoslib: Remember flight list in AltosConfigData
+
+ Do this instead of having to re-fetch and re-parse in AltosEepromList
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 00492a0801eb93ad98be496585741a025ffea16b
+Author: Keith Packard <keithp@keithp.com>
+Date: Thu May 28 16:45:00 2020 -0700
+
+ altos: Initialize pyro code for easytimer-v1
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 0f110d01245762d905ad5b7fd1fc7753e17fb249
+Author: Keith Packard <keithp@keithp.com>
+Date: Thu May 28 16:23:44 2020 -0700
+
+ easytimer-v1: Enable pyro commands
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 5bfcefc475698dada8be8a2d66afbfcc064d4612
+Author: Keith Packard <keithp@keithp.com>
+Date: Thu May 28 16:23:09 2020 -0700
+
+ altos: Fix ao_ignite.c to work without HAS_IGNITE
+
+ Need to register commands even if HAS_IGNITE is not set
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 0fb9e53a6b62c96d067e2974c5317e3bce638fb2
+Author: Keith Packard <keithp@keithp.com>
+Date: Thu May 28 15:48:16 2020 -0700
+
+ altos: Build easytimer-v1 by default
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit a901ec5fef409a6675c24518aead2925dcd66cc3
+Author: Bdale Garbee <bdale@gag.com>
+Date: Wed Apr 8 13:43:22 2020 -0600
+
+ altos: add easytimer-v1 source directory
+
+commit 9416e5d71dc57df6612f62451433a34bf669b2cc
+Author: Keith Packard <keithp@keithp.com>
+Date: Thu May 28 16:03:23 2020 -0700
+
+ altos: Allow flight support without logging
+
+ EasyTimer flies rockets, but doesn't have SPI flash for logging.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit d4f1dd045465fbb7436a22d82b279319f7449fed
+Author: Keith Packard <keithp@keithp.com>
+Date: Thu May 28 16:02:54 2020 -0700
+
+ altos: Allow BMX160 to be used as primary accel
+
+ EasyTimer doesn't have a high-g part.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit d553e7448fe22f593eb8ab8246e872d856484bab
+Author: Keith Packard <keithp@keithp.com>
+Date: Thu May 28 16:01:45 2020 -0700
+
+ altos: Allow igniter status beeping with only 'extra' channels
+
+ EasyTimer doesn't have main/apogee charges.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 2f32a19aedb7d0e33899038e3fb04fe8a773291a
+Author: Keith Packard <keithp@keithp.com>
+Date: Mon Aug 12 17:00:47 2019 -0700
+
+ altos: Allow accel-only flight code
+
+ EasyTimer won't have a baro sensor, so we need some way to track at least
+ the ascent part of a flight.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 6363403d6c08310a16769bf49b8acc45a08bd619
+Author: Keith Packard <keithp@keithp.com>
+Date: Thu May 28 16:00:04 2020 -0700
+
+ altos: Allow MPU9250 SPI speed to be set by application
+
+ Rather than requiring 1MHz
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit e5e7edb0aed5a183bbdd7484fec75a11160d01d4
+Author: Keith Packard <keithp@keithp.com>
+Date: Wed Apr 8 17:20:23 2020 -0700
+
+ ao-tools/ao-usbload: stubs in man page for missing options
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 7797000eeaf11027200f12ee7f1eee5ed677f268
+Author: Keith Packard <keithp@keithp.com>
+Date: Mon May 4 11:58:54 2020 -0700
+
+ Mark stm_interrupt_vector as const so it is READONLY
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 2108da105ed9c915fc09d1251dc655bf11203d79
+Author: Keith Packard <keithp@keithp.com>
+Date: Sun Sep 15 17:05:17 2019 -0700
+
+ altos: Move from newlib-nano to picolibc
+
+ Use picolibc.ld, which involved some .ld file hacking, including:
+
+ 1) Defining ao_boot RAM address in the .ld file and declaring it 'extern'
+ 2) Changing how m0 interrupt vector got moved to ram
+ 3) Using -Taltos.ld instead of -Wl,-Taltos.ld so picolibc.specs wouldn't add picolibc.ld
+ 4) Placing romconfig vars in '.init.1' and '.init.2' sections instead of '.romconfig'
+ 5) Place code needing to run out of RAM in section .srodata instead of .ramtext
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 74d5dfd1801da8efbb7693a607fd25e35ad1158d
+Author: Keith Packard <keithp@keithp.com>
+Date: Mon May 4 10:36:41 2020 -0700
+
+ ignore .map files
+
+commit f32488556ce25e439fbab941f8019db639824f98
+Author: Keith Packard <keithp@keithp.com>
+Date: Sun May 3 20:01:14 2020 -0700
+
+ altos/lpc: Add explicit defines for all register groups
+
+ This lets the compiler see the constant address, rather than
+ having the linker stick it in later.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 0459a4c7239c3017a61926bc8aab59e556b7eb5e
+Author: Keith Packard <keithp@keithp.com>
+Date: Mon May 4 10:35:23 2020 -0700
+
+ Create map file for all programs
+
+commit 3d70ca6bae383878d8a7c13b862031531fa4ff81
+Author: Keith Packard <keithp@keithp.com>
+Date: Sun May 3 18:31:19 2020 -0700
+
+ altos/stm: Make ao_eeprom_total a #define instead of a const variable
+
+ This is unused outside of ao_eeprom_stm.c, and as global const takes
+ up space in flash.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 9b62e2b4831eb90c65ecdf05c219e8711840ef1e
+Author: Bdale Garbee <bdale@gag.com>
+Date: Thu May 14 12:44:27 2020 -0600
+
+ point turnon_telemetrum_v2 to correct test script for v2.0
+
+commit 918865cca7297dde522e1886edf71b46d6ee2534
+Author: Keith Packard <keithp@keithp.com>
+Date: Fri Apr 17 12:53:47 2020 -0700
+
+ ao-tools: Declare ao_verbose as extern in shared header.
+
+ gcc-10 disables 'common' behavior by defaul, so we need to only define
+ variables in one location now.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit c2acda26c1e4e0d7ffda9cd985180562f61aa88b
+Author: Keith Packard <keithp@keithp.com>
+Date: Fri Apr 17 12:51:13 2020 -0700
+
+ ao-tools: Use array indexing instead of addition to make gcc-10 happy
+
+ A struct with a trailing zero-length array (for variable-length data) is
+ treated as a zero-sized object when doing pointer arithmetic, but treated
+ correctly when treated as an array. This generates a warning from gcc-10
+
+ load->data + address - load->address
+
+ while this, which is 'the same', does not:
+
+ &load->data[address - load->address]
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 769f0e6049ae0440cf32f8cb0b5e504f67f5e911
+Author: Keith Packard <keithp@keithp.com>
+Date: Thu Mar 26 10:09:51 2020 -0700
+
+ Start release notes for 1.9.4
+
+commit a6687ce902a3011796aee93f87d08545e5f0cec9
+Author: Keith Packard <keithp@keithp.com>
+Date: Thu Mar 26 10:01:48 2020 -0700
+
+ altosui: Report baro ground alt for 'Pad Altitude' when GPS missing
+
+ The 'Pad Altitude' field in the pad tab of AltosUI was originally one
+ of three fields designed to report the GPS position of the pad. When
+ TeleMini was added, the code was updated to separate the lat/lon from
+ altitude display, but the pad_alt field in AltosState used for that
+ was still only computed from GPS data.
+
+ This fix gets rid of the confusing 'pad_alt' field in AltosState and
+ has the 'Pad Altitude' data select either GPS ground altitude or baro
+ ground altitude, depending on whether GPS data is available.
+
+ signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 455a059b9c44332b8dadd87fba31d194f66997b5
+Author: Keith Packard <keithp@keithp.com>
+Date: Sat Mar 21 21:13:08 2020 -0700
+
+ map-server: Create Manifest.txt at build time
+
+ This ensures the libraries have the right names
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit c9c4c615578c94201140cf904cfd7e3334853973
+Author: Keith Packard <keithp@keithp.com>
+Date: Wed Mar 4 18:52:35 2020 -0800
+
+ doc: start release notes for 1.9.3
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit d8716b015cfeb4955c0224c32d3c01e66b092209
+Author: Keith Packard <keithp@keithp.com>
+Date: Wed Mar 4 18:51:00 2020 -0800
+
+ doc: Document APRS offset configuration value
+
+ Update screen shots including this as well.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 47f4121ae6596bdf18566295df2fdbe94fe676b8
+Author: Keith Packard <keithp@keithp.com>
+Date: Wed Mar 4 18:23:14 2020 -0800
+
+ altoslib, altosui, telegps: Add configuration support for APRS offset
+
+ Configure the position within each minute that APRS transmissions
+ occur
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit f4ff561bfaa7c59493eb9d6b99f0347db381a167
+Author: Keith Packard <keithp@keithp.com>
+Date: Wed Mar 4 17:26:49 2020 -0800
+
+ altos: add APRS 'offset' value to set APRS transmision time
+
+ This value is the offset from the top of the minute for the first APRS
+ packet in the minute. Subsequent packets will be transmitted
+ 'interval' seconds apart for the rest of the minute.
+
+ This allows multiple transmitters to be configured to share the same
+ frequency and not transmit at the same time.
+
+ Note that this offset only works when the device has GPS lock.
+
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 0fd503fb65d513f54dade10256545043725d83e3
+Author: Bdale Garbee <bdale@gag.com>
+Date: Tue Feb 25 23:57:51 2020 -0700
+
+ update ChangeLog for release 1.9.2
+