fw/altos
3 years agoaltosui: open /Library/AltusMetrum on Mac OS X after install
Keith Packard [Sat, 27 Feb 2021 21:38:54 +0000 (13:38 -0800)]
altosui: open /Library/AltusMetrum on Mac OS X after install

This helps the user find the documentation.

Signed-off-by: Keith Packard <keithp@keithp.com>
3 years agomicropeak: Stick docs in Doc dir on Mac OS X
Keith Packard [Sat, 27 Feb 2021 21:23:16 +0000 (13:23 -0800)]
micropeak: Stick docs in Doc dir on Mac OS X

Follows altosui and telegps installation

Signed-off-by: Keith Packard <keithp@keithp.com>
3 years agoaltosui: Show dialog box if sudo fails on Mac OS X
Keith Packard [Sat, 27 Feb 2021 21:22:39 +0000 (13:22 -0800)]
altosui: Show dialog box if sudo fails on Mac OS X

If the user types the wrong password three times, sudo will give up
and return an error.

Signed-off-by: Keith Packard <keithp@keithp.com>
3 years agomicropeak: Use a menu for 'Download' on Mac OS X
Keith Packard [Sat, 27 Feb 2021 20:51:13 +0000 (12:51 -0800)]
micropeak: Use a menu for 'Download' on Mac OS X

Attempts to add buttons to the menu bar fail leaving no access to the
download command.

Signed-off-by: Keith Packard <keithp@keithp.com>
3 years agodoc: add motortest docs to publish targets
Bdale Garbee [Mon, 15 Feb 2021 21:27:30 +0000 (14:27 -0700)]
doc: add motortest docs to publish targets

3 years agodoc: have motortest documents actually get built by default
Bdale Garbee [Mon, 15 Feb 2021 21:25:47 +0000 (14:25 -0700)]
doc: have motortest documents actually get built by default

3 years agodoc: make doc be about motor testing in general, not just EasyMotor
Bdale Garbee [Mon, 15 Feb 2021 21:12:46 +0000 (14:12 -0700)]
doc: make doc be about motor testing in general, not just EasyMotor

3 years agodoc: add a brief note about TeleBT appearing inert until paired
Bdale Garbee [Sat, 30 Jan 2021 18:48:01 +0000 (11:48 -0700)]
doc: add a brief note about TeleBT appearing inert until paired

3 years agodoc: first draft of manual for EasyMotor
Bdale Garbee [Mon, 18 Jan 2021 02:29:28 +0000 (19:29 -0700)]
doc: first draft of manual for EasyMotor

3 years agoaltoslib: Add all known launch sites and names to map preload
Keith Packard [Fri, 4 Dec 2020 22:58:15 +0000 (14:58 -0800)]
altoslib: Add all known launch sites and names to map preload

This shows all of the known launch sites and their names in the map
preload screen.

Signed-off-by: Keith Packard <keithp@keithp.com>
3 years agodoc: add documentation on how to re-flash a TeleMini v3 over USB
Bdale Garbee [Sat, 21 Nov 2020 18:22:01 +0000 (11:22 -0700)]
doc: add documentation on how to re-flash a TeleMini v3 over USB

3 years agoMerge branch 'master' of ssh://git.gag.com/scm/git/fw/altos
Bdale Garbee [Sat, 21 Nov 2020 18:00:43 +0000 (11:00 -0700)]
Merge branch 'master' of ssh://git.gag.com/scm/git/fw/altos

3 years agoao-tools/ao-dump-up: Recognize MicroTest data
Keith Packard [Fri, 6 Nov 2020 05:59:27 +0000 (21:59 -0800)]
ao-tools/ao-dump-up: Recognize MicroTest data

Spit out a special message when MicroTest data is read to make testing
µPusb easier.

Signed-off-by: Keith Packard <keithp@keithp.com>
3 years agoaltos: Add 'microtest' -- micropeak load for testing µPusb
Keith Packard [Fri, 6 Nov 2020 05:58:04 +0000 (21:58 -0800)]
altos: Add 'microtest' -- micropeak load for testing µPusb

This is custom MicroPeak firmware that just repeatedly generates
constant flight log data which can be used to validate µPusb boards.

Signed-off-by: Keith Packard <keithp@keithp.com>
3 years agoVersion 1.9.6.1
Keith Packard [Thu, 29 Oct 2020 18:41:55 +0000 (11:41 -0700)]
Version 1.9.6.1

Intermediate release containing altoslib fixes for TeleMega v4.0 in
Antenna Down configuration.

Signed-off-by: Keith Packard <keithp@keithp.com>
3 years agoaltoslib: Delay accel cal value adjustment until data all read
Keith Packard [Thu, 29 Oct 2020 18:40:25 +0000 (11:40 -0700)]
altoslib: Delay accel cal value adjustment until data all read

Instead of trying to compute these values as soon as the necessary
data are available, delay until all data are available as which data
are necessary depends on the target device, and some target devices
don't have some of the data values at all.

Signed-off-by: Keith Packard <keithp@keithp.com>
3 years agoaltoslib: Fix accel inversion for TeleMega v4.0
Keith Packard [Thu, 29 Oct 2020 18:38:55 +0000 (11:38 -0700)]
altoslib: Fix accel inversion for TeleMega v4.0

TeleMega v4.0 uses the adxl375, just like EasyMega v2.0

Signed-off-by: Keith Packard <keithp@keithp.com>
3 years agoaltoslib: Avoid sending negative accel cal values to flight computer
Keith Packard [Thu, 29 Oct 2020 18:37:03 +0000 (11:37 -0700)]
altoslib: Avoid sending negative accel cal values to flight computer

Pre-1.9.7 firmware does not handle negative values. Instead, send
large positive values which will wrap around to negative values inside
the flight computer.

Signed-off-by: Keith Packard <keithp@keithp.com>
3 years agoao-bringup: Delay before testing easymini for 0.25 seconds
Keith Packard [Wed, 28 Oct 2020 21:32:16 +0000 (14:32 -0700)]
ao-bringup: Delay before testing easymini for 0.25 seconds

EasyMini isn't quite ready to play when the USB is first detected as
the sensors haven't yet been initialized. Wait for 0.25 seconds to
give the board time to finish initializing.

Signed-off-by: Keith Packard <keithp@keithp.com>
3 years agoaltos: Don't wait after igniter in manual mode
Keith Packard [Tue, 27 Oct 2020 04:53:54 +0000 (21:53 -0700)]
altos: Don't wait after igniter in manual mode

There's no reason to delay between igniter firings in manual mode, and
it slows down testing.

Signed-off-by: Keith Packard <keithp@keithp.com>
3 years agoput notes in Releasing about keeping doc/header.inc up to date
Bdale Garbee [Mon, 16 Nov 2020 17:50:49 +0000 (10:50 -0700)]
put notes in Releasing about keeping doc/header.inc up to date

3 years agoTeleLaunch docs should use telelaunch.txt, update copyright year, lose "draft"
Bdale Garbee [Mon, 16 Nov 2020 17:47:53 +0000 (10:47 -0700)]
TeleLaunch docs should use telelaunch.txt, update copyright year, lose "draft"

3 years agoaltoslib, altosui: Don't show apogee/main for EasyTimer Fire Igniter
Keith Packard [Sat, 24 Oct 2020 00:05:37 +0000 (17:05 -0700)]
altoslib, altosui: Don't show apogee/main for EasyTimer Fire Igniter

Don't create igniter lines for a device which doesn't have them.

Signed-off-by: Keith Packard <keithp@keithp.com>
3 years agoaltos/easytimer-v1: Switch from including adxl375 to bmx160
Keith Packard [Fri, 23 Oct 2020 23:14:13 +0000 (16:14 -0700)]
altos/easytimer-v1: Switch from including adxl375 to bmx160

These aren't really necessary at all as ao_data includes them, but
it's nice to have them listed for documentation purposes.

Signed-off-by: Keith Packard <keithp@keithp.com>
3 years agoaltos/easymotor-v2: Increase default flight log size
Keith Packard [Fri, 23 Oct 2020 23:13:47 +0000 (16:13 -0700)]
altos/easymotor-v2: Increase default flight log size

Switch to 4 flights by default, with 2MB per flight.

Signed-off-by: Keith Packard <keithp@keithp.com>
3 years agoaltosui: Match against basestations when determining remote
Keith Packard [Fri, 23 Oct 2020 23:12:36 +0000 (16:12 -0700)]
altosui: Match against basestations when determining remote

These two cases were matching against !altimeters instead, which isn't
true for EasyMotor or EasyTimer.

Signed-off-by: Keith Packard <keithp@keithp.com>
3 years agoaltoslib, altosuilib: Get Idle Monitor working with EasyTimer and EasyMotor
Keith Packard [Fri, 23 Oct 2020 23:10:43 +0000 (16:10 -0700)]
altoslib, altosuilib: Get Idle Monitor working with EasyTimer and EasyMotor

This involve splitting out the gyro and mag sensor handling from the
3-d accel stuff, displaying only information that is present. The IMU
support now allows for using the along axis as the primary
acceleration indicator. The Adxl375 now allows using all three axes as
the 3d accelerometer.

Signed-off-by: Keith Packard <keithp@keithp.com>
3 years agoaltoslib: Set all 3 axes of accel cal data when present
Keith Packard [Fri, 23 Oct 2020 23:02:07 +0000 (16:02 -0700)]
altoslib: Set all 3 axes of accel cal data when present

Use the new accel cal function in altos to set all three axes

Signed-off-by: Keith Packard <keithp@keithp.com>
3 years agoaltos: Make accel cal take three axes when present
Keith Packard [Fri, 23 Oct 2020 23:00:01 +0000 (16:00 -0700)]
altos: Make accel cal take three axes when present

This allows AltosUI to save/restore all of the accel calibration
values instead of just the primary axis.

Signed-off-by: Keith Packard <keithp@keithp.com>
3 years agolibaltos: Add windows override for EasyTimer USB ID
Keith Packard [Fri, 23 Oct 2020 03:48:26 +0000 (20:48 -0700)]
libaltos: Add windows override for EasyTimer USB ID

Windows doesn't use the product name from the device, instead it uses
whatever was in the .ini file, which was "TeleTerra" for the EasyTimer ID.

Signed-off-by: Keith Packard <keithp@keithp.com>
3 years agoUpdate 1.9.6 release date. Add note to Releasing about date
Keith Packard [Fri, 23 Oct 2020 03:52:03 +0000 (20:52 -0700)]
Update 1.9.6 release date. Add note to Releasing about date

Need to update the release date as well as the release version; that's
where all of the dates in the various docs comes from.

Signed-off-by: Keith Packard <keithp@keithp.com>
3 years agoupdate configure.ac for 1.9.6 release
Bdale Garbee [Thu, 22 Oct 2020 22:17:04 +0000 (16:17 -0600)]
update configure.ac for 1.9.6 release

3 years agodoc: Mention BMX-160 self-test fix in 1.9.6 release notes
Keith Packard [Thu, 22 Oct 2020 05:11:18 +0000 (22:11 -0700)]
doc: Mention BMX-160 self-test fix in 1.9.6 release notes

Signed-off-by: Keith Packard <keithp@keithp.com>
3 years agolibaltos: Add pre-built windows dll binaries
Keith Packard [Thu, 22 Oct 2020 05:01:47 +0000 (22:01 -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>
3 years agodoc: 1.9.6 release notes
Keith Packard [Thu, 22 Oct 2020 04:45:53 +0000 (21:45 -0700)]
doc: 1.9.6 release notes

Signed-off-by: Keith Packard <keithp@keithp.com>
3 years agoaltoslib: Don't pass along GPS information when the GPS device is busted
Keith Packard [Wed, 7 Oct 2020 01:54:27 +0000 (18:54 -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>
3 years agoaltoslib: Add defines for EasyMotor
Keith Packard [Wed, 7 Oct 2020 01:53:38 +0000 (18:53 -0700)]
altoslib: Add defines for EasyMotor

Just USB ids and product names.

Signed-off-by: Keith Packard <keithp@keithp.com>
3 years agoaltoslib: Clip accelerometer-based speed to >= 0
Keith Packard [Sat, 17 Oct 2020 22:29:11 +0000 (15:29 -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>
3 years agoaltoslib: Limit .csv file output to valid fields for EasyMotor
Keith Packard [Sat, 17 Oct 2020 03:54:32 +0000 (20:54 -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>
3 years agoaltoslib: Easy Motor v2 x axis is inverted
Keith Packard [Sat, 17 Oct 2020 03:53:56 +0000 (20:53 -0700)]
altoslib: Easy Motor v2 x axis is inverted

Provide positive accel values along rocket axis

Signed-off-by: Keith Packard <keithp@keithp.com>
3 years agoaltoslib: Correct ADXL counts_per_g
Keith Packard [Sat, 17 Oct 2020 03:52:48 +0000 (20:52 -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>
3 years agoaltoslib: use motor pressure calibration data for EasyMotor
Keith Packard [Fri, 16 Oct 2020 22:30:35 +0000 (15:30 -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>
3 years agoaltoslib: Report metric pressure in kPa instead of Pa
Keith Packard [Fri, 16 Oct 2020 22:29:12 +0000 (15:29 -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>
3 years agoaltoslib: Add EasyMotor EEPROM support
Keith Packard [Mon, 12 Oct 2020 23:48:42 +0000 (16:48 -0700)]
altoslib: Add EasyMotor EEPROM support

Signed-off-by: Keith Packard <keithp@keithp.com>
3 years agoaltosuilib: Graph motor pressure
Keith Packard [Mon, 12 Oct 2020 23:47:54 +0000 (16:47 -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>
3 years agoaltoslib: Add 'motor_pressure' data value
Keith Packard [Mon, 12 Oct 2020 23:46:28 +0000 (16:46 -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>
3 years agoaltoslib: Add conversion for motor pressure sensor
Keith Packard [Mon, 12 Oct 2020 23:40:41 +0000 (16:40 -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>
3 years agoaltoslib: Initialize gyro offset values to MISSING
Keith Packard [Mon, 12 Oct 2020 23:40:03 +0000 (16:40 -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>
3 years agoaltos: Reset 3d-accel and motor pressure sums each ground interval
Keith Packard [Sat, 17 Oct 2020 03:48:55 +0000 (20:48 -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>
3 years agoaltos: Add motor pressure calibration data to easy motor log
Keith Packard [Fri, 16 Oct 2020 19:59:48 +0000 (12:59 -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>
3 years agoaltos: Support negative decimal values on command line
Keith Packard [Fri, 16 Oct 2020 19:57:07 +0000 (12:57 -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>
3 years agoaltos/test: Clean up easy motor test jig
Keith Packard [Mon, 12 Oct 2020 23:55:23 +0000 (16:55 -0700)]
altos/test: Clean up easy motor test jig

Signed-off-by: Keith Packard <keithp@keithp.com>
3 years agoaltos: Log motor pressure and battery voltage for EasyMotor
Keith Packard [Mon, 12 Oct 2020 23:54:34 +0000 (16:54 -0700)]
altos: Log motor pressure and battery voltage for EasyMotor

These were not logged at all.

Signed-off-by: Keith Packard <keithp@keithp.com>
3 years agoaltos: De-bias height/speed data while on pad
Keith Packard [Sun, 11 Oct 2020 05:00:56 +0000 (22:00 -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>
3 years agoaltos: Change adxl375 self test parameters
Keith Packard [Sun, 11 Oct 2020 05:54:00 +0000 (22:54 -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>
3 years agoaltos/easymotor-v2: Add 'through' axis definition
Keith Packard [Sun, 11 Oct 2020 04:56:38 +0000 (21:56 -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>
3 years agoaltos/test: Build ao_flight_test_motor
Keith Packard [Sun, 11 Oct 2020 04:56:06 +0000 (21:56 -0700)]
altos/test: Build ao_flight_test_motor

This tests the flight code in easymotor mode.

Signed-off-by: Keith Packard <keithp@keithp.com>
3 years agoaltos: Let ao_data.c be used by ao_flight_test
Keith Packard [Sun, 11 Oct 2020 04:55:36 +0000 (21:55 -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>
3 years agoaltos/easymotor-v2: Beep out 'pad mode' repeatedly
Keith Packard [Mon, 24 Aug 2020 00:32:41 +0000 (18:32 -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>
3 years agoaltos/easymotor-v2: ADXL375 is upside-down compared with other boards
Keith Packard [Mon, 24 Aug 2020 00:31:25 +0000 (18:31 -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>
3 years agoaltos/stmf0: Fixup for SPI mode support
Keith Packard [Mon, 24 Aug 2020 00:15:14 +0000 (18:15 -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>
3 years agoaltos/easymotor-v2: Fix beeper config
Keith Packard [Mon, 24 Aug 2020 00:13:42 +0000 (18:13 -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>
3 years agoaltos/easymotor-v2: Use same init order as easymini
Keith Packard [Mon, 24 Aug 2020 00:12:10 +0000 (18:12 -0600)]
altos/easymotor-v2: Use same init order as easymini

Signed-off-by: Keith Packard <keithp@keithp.com>
3 years agorecover easymotor-v2/flash-loader/ao_pins.h from backups
Bdale Garbee [Sat, 22 Aug 2020 02:40:44 +0000 (20:40 -0600)]
recover easymotor-v2/flash-loader/ao_pins.h from backups

3 years agoaltos/easymotor-v2: Get easy motor building
Keith Packard [Sun, 2 Aug 2020 20:11:39 +0000 (13:11 -0700)]
altos/easymotor-v2: Get easy motor building

Add some missing files and adjust configuration.

Signed-off-by: Keith Packard <keithp@keithp.com>
3 years agoaltos/easymotor-v2: Add .gitignore
Keith Packard [Sun, 2 Aug 2020 20:11:16 +0000 (13:11 -0700)]
altos/easymotor-v2: Add .gitignore

Signed-off-by: Keith Packard <keithp@keithp.com>
3 years agoaltos/stmf0: Add spi format configuration options
Keith Packard [Sun, 2 Aug 2020 20:09:17 +0000 (13:09 -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>
3 years agoaltos: Support accel-only IMU configurations
Keith Packard [Sun, 2 Aug 2020 20:07:01 +0000 (13:07 -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>
3 years agoaltos: Add EasyMotor logging support
Keith Packard [Sun, 2 Aug 2020 20:06:01 +0000 (13:06 -0700)]
altos: Add EasyMotor logging support

Log EasyMotor sensor data.

Signed-off-by: Keith Packard <keithp@keithp.com>
3 years agoaltos: Allow use of ADXL375 as IMU
Keith Packard [Sun, 2 Aug 2020 20:04:27 +0000 (13:04 -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>
3 years agoaltos/drivers: Add ao_adxl375_accel_to_sample macro
Keith Packard [Sun, 2 Aug 2020 19:51:16 +0000 (12:51 -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>
3 years agoeasymotor: override .gitignore to store Makefiles
Bdale Garbee [Mon, 27 Jul 2020 20:52:50 +0000 (14:52 -0600)]
easymotor: override .gitignore to store Makefiles

3 years agofirst cut at EasyMotor v2 .. not compiling yet
Bdale Garbee [Sun, 26 Jul 2020 00:07:36 +0000 (18:07 -0600)]
first cut at EasyMotor v2 .. not compiling yet

3 years agolibaltos: Avoid using strcmp and strchr on windows
Keith Packard [Wed, 30 Sep 2020 22:53:38 +0000 (15:53 -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>
3 years agoaltosui: Include telelco and telefireeight firmware in FAT builds
Keith Packard [Wed, 30 Sep 2020 07:20:24 +0000 (00:20 -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>
3 years agoaltos: Fix flash loader map file names
Keith Packard [Wed, 30 Sep 2020 06:58:10 +0000 (23:58 -0700)]
altos: Fix flash loader map file names

Make sure these include the product name too.

Signed-off-by: Keith Packard <keithp@keithp.com>
3 years agoaltos: Remove linker map files during 'make clean'
Keith Packard [Wed, 30 Sep 2020 06:57:26 +0000 (23:57 -0700)]
altos: Remove linker map files during 'make clean'

Signed-off-by: Keith Packard <keithp@keithp.com>
3 years agoReleasing: updated with changes from 1.9.5 release
Bdale Garbee [Wed, 30 Sep 2020 06:49:14 +0000 (00:49 -0600)]
Releasing: updated with changes from 1.9.5 release

3 years agoVersion 1.9.5
Keith Packard [Wed, 30 Sep 2020 03:10:38 +0000 (20:10 -0700)]
Version 1.9.5

Signed-off-by: Keith Packard <keithp@keithp.com>
3 years agoaltosui: Work around lack of actual USB product names on Windows
Keith Packard [Wed, 30 Sep 2020 05:02:56 +0000 (22:02 -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>
3 years agoaltosdroid: Copy generated .apks to bin directory
Keith Packard [Wed, 30 Sep 2020 03:08:31 +0000 (20:08 -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>
3 years agodoc: Add 1.9.5 release notes
Keith Packard [Sat, 26 Sep 2020 03:06:18 +0000 (20:06 -0700)]
doc: Add 1.9.5 release notes

Signed-off-by: Keith Packard <keithp@keithp.com>
3 years agoaltoslib: Print more helpful debug messages when checking rom version
Keith Packard [Wed, 2 Sep 2020 01:47:23 +0000 (18:47 -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>
3 years agolibaltos: Update to support Mac OS X 10.15 (catalina)
Keith Packard [Wed, 2 Sep 2020 01:31:03 +0000 (18:31 -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>
3 years agomacosx: Update macosx install script
Keith Packard [Tue, 1 Sep 2020 03:52:43 +0000 (20:52 -0700)]
macosx: Update macosx install script

Use dialog engine to monitor progress and get sudo password

Signed-off-by: Keith Packard <keithp@keithp.com>
3 years agoaltosuilib: Make dialogs mostly scrollable
Keith Packard [Mon, 31 Aug 2020 22:08:08 +0000 (15:08 -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>
3 years agowindows: Point windows users at adoptopenjdk.net by default
Keith Packard [Mon, 31 Aug 2020 22:07:13 +0000 (15:07 -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>
3 years agomacosx: Hack JavaApplicationStub to set freetype properties
Keith Packard [Mon, 31 Aug 2020 22:05:41 +0000 (15:05 -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>
3 years agoaltoslib: Set default logging directory to $HOME/AltusMetrum
Keith Packard [Mon, 31 Aug 2020 22:03:57 +0000 (15:03 -0700)]
altoslib: Set default logging directory to $HOME/AltusMetrum

Change from ~/TeleMetrum

Signed-off-by: Keith Packard <keithp@keithp.com>
3 years agolibaltos: Map generic windows device names to actual names
Keith Packard [Mon, 31 Aug 2020 22:01:18 +0000 (15:01 -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>
3 years agodocs: add explicit admonition about avoiding 'c f' when configuring TeleLaunch
Bdale Garbee [Fri, 18 Sep 2020 17:38:06 +0000 (11:38 -0600)]
docs: add explicit admonition about avoiding 'c f' when configuring TeleLaunch

3 years agodocs: fix horrible typo in TeleLaunch configuration section
Bdale Garbee [Fri, 18 Sep 2020 17:34:56 +0000 (11:34 -0600)]
docs: fix horrible typo in TeleLaunch configuration section

3 years agoaltosuilib: Allow config to be missing in rom config dialog
Keith Packard [Sun, 23 Aug 2020 22:34:26 +0000 (15:34 -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>
3 years agoaltoslib: Deal with reflashing EasyMega boards with ancient firmware
Keith Packard [Sun, 23 Aug 2020 22:32:57 +0000 (15:32 -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>
3 years agodoc: Fix spelling error in updating-firmware section.
Keith Packard [Sun, 23 Aug 2020 17:55:30 +0000 (10:55 -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>
3 years agoaltosui: Improve configuration save feedback
Keith Packard [Sun, 23 Aug 2020 17:53:25 +0000 (10:53 -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>
3 years agoaltoslib: Improve configuration performance over remote link
Keith Packard [Sun, 23 Aug 2020 17:51:00 +0000 (10:51 -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>
3 years agofix broken TeleBT turnon script
Bdale Garbee [Wed, 19 Aug 2020 20:38:04 +0000 (14:38 -0600)]
fix broken TeleBT turnon script

3 years agoaltoslib: Flush output when disabling remote
Keith Packard [Sat, 8 Aug 2020 04:51:39 +0000 (21:51 -0700)]
altoslib: Flush output when disabling remote

This speeds up sending data to the other end.

Signed-off-by: Keith Packard <keithp@keithp.com>
3 years agoaltoslib: Don't fetch config data for every idle status
Keith Packard [Sat, 8 Aug 2020 04:50:38 +0000 (21:50 -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>