<feed xmlns='http://www.w3.org/2005/Atom'>
<title>mjb/altos/src/kernel, branch pong</title>
<subtitle>AltOS - the operating system for Altus Metrum products
</subtitle>
<id>https://git.ethernal.org/mjb/altos/atom?h=pong</id>
<link rel='self' href='https://git.ethernal.org/mjb/altos/atom?h=pong'/>
<link rel='alternate' type='text/html' href='https://git.ethernal.org/mjb/altos/'/>
<updated>2017-10-28T15:42:18+00:00</updated>
<entry>
<title>altos: Share common logging code. Deal with corrupt initial flight records</title>
<updated>2017-10-28T15:42:18+00:00</updated>
<author>
<name>Keith Packard</name>
<email>keithp@keithp.com</email>
</author>
<published>2017-10-22T20:44:32+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ethernal.org/mjb/altos/commit/?id=83929cd290279963b01b2ccd52c70d61bdeff6b0'/>
<id>urn:sha1:83929cd290279963b01b2ccd52c70d61bdeff6b0</id>
<content type='text'>
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 &lt;keithp@keithp.com&gt;
</content>
</entry>
<entry>
<title>altos: Define AO_LOG_FORMAT in */ao_pins.h. Use in ao_cmd.c</title>
<updated>2017-10-22T20:43:07+00:00</updated>
<author>
<name>Keith Packard</name>
<email>keithp@keithp.com</email>
</author>
<published>2017-10-22T20:43:07+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ethernal.org/mjb/altos/commit/?id=256ddea8c430b4b5dcb8bb95c19ad26032129e1b'/>
<id>urn:sha1:256ddea8c430b4b5dcb8bb95c19ad26032129e1b</id>
<content type='text'>
Instead of having a global variable define the log format, use a macro
instead to save data space.

Signed-off-by: Keith Packard &lt;keithp@keithp.com&gt;
</content>
</entry>
<entry>
<title>altos: Remove cross-block storage I/O on cc1111</title>
<updated>2017-10-22T20:39:25+00:00</updated>
<author>
<name>Keith Packard</name>
<email>keithp@keithp.com</email>
</author>
<published>2017-10-22T20:39:25+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ethernal.org/mjb/altos/commit/?id=15af16ad21f67019065763a93d52cea6097a69d1'/>
<id>urn:sha1:15af16ad21f67019065763a93d52cea6097a69d1</id>
<content type='text'>
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 &lt;keithp@keithp.com&gt;
</content>
</entry>
<entry>
<title>altos: Add MPU9250 support to self test and data</title>
<updated>2017-10-12T07:31:26+00:00</updated>
<author>
<name>Keith Packard</name>
<email>keithp@keithp.com</email>
</author>
<published>2017-10-12T07:31:26+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ethernal.org/mjb/altos/commit/?id=4431f70044f4e1120d606f0ded1845349295d68e'/>
<id>urn:sha1:4431f70044f4e1120d606f0ded1845349295d68e</id>
<content type='text'>
The remaining hooks to make the MPU9250 work in flight.

Signed-off-by: Keith Packard &lt;keithp@keithp.com&gt;
</content>
</entry>
<entry>
<title>altos: Stop storing pyro fired status in config block</title>
<updated>2017-10-09T01:53:52+00:00</updated>
<author>
<name>Keith Packard</name>
<email>keithp@keithp.com</email>
</author>
<published>2017-10-09T01:50:59+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ethernal.org/mjb/altos/commit/?id=c8dbfff65dd61e42d0a02158dcb520e7710ef87e'/>
<id>urn:sha1:c8dbfff65dd61e42d0a02158dcb520e7710ef87e</id>
<content type='text'>
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 &lt;keithp@keithp.com&gt;
</content>
</entry>
<entry>
<title>altos: Allow pyro config name to end with newline, not just space/tab</title>
<updated>2017-10-02T23:57:15+00:00</updated>
<author>
<name>Keith Packard</name>
<email>keithp@keithp.com</email>
</author>
<published>2017-10-02T23:57:15+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ethernal.org/mjb/altos/commit/?id=770998be2c15dd41a63520d0c8747d7cf32ec447'/>
<id>urn:sha1:770998be2c15dd41a63520d0c8747d7cf32ec447</id>
<content type='text'>
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 &lt;keithp@keithp.com&gt;
</content>
</entry>
<entry>
<title>altos: Fix debug printf in ao_pyro for state &gt;=</title>
<updated>2017-09-12T20:41:11+00:00</updated>
<author>
<name>Keith Packard</name>
<email>keithp@keithp.com</email>
</author>
<published>2017-09-12T20:41:11+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ethernal.org/mjb/altos/commit/?id=be44d33f5e94b8c4180adb275ec83cc70852db48'/>
<id>urn:sha1:be44d33f5e94b8c4180adb275ec83cc70852db48</id>
<content type='text'>
Signed-off-by: Keith Packard &lt;keithp@keithp.com&gt;
</content>
</entry>
<entry>
<title>altos: Don't compute filtered average of height error when HAS_ACCEL</title>
<updated>2017-08-28T07:22:43+00:00</updated>
<author>
<name>Keith Packard</name>
<email>keithp@keithp.com</email>
</author>
<published>2017-08-28T07:15:43+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ethernal.org/mjb/altos/commit/?id=4775b1d9b50a8732d66a0ad3b73ff74901a8cb7f'/>
<id>urn:sha1:4775b1d9b50a8732d66a0ad3b73ff74901a8cb7f</id>
<content type='text'>
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 &lt;keithp@keithp.com&gt;
</content>
</entry>
<entry>
<title>altos: Don't eliminate baro above mach speed, just trust it less</title>
<updated>2017-08-28T00:40:40+00:00</updated>
<author>
<name>Keith Packard</name>
<email>keithp@keithp.com</email>
</author>
<published>2017-08-27T02:16:47+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ethernal.org/mjb/altos/commit/?id=ea6fe21d78744d7e6225a56c369d54f7cd956767'/>
<id>urn:sha1:ea6fe21d78744d7e6225a56c369d54f7cd956767</id>
<content type='text'>
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 &lt;keithp@keithp.com&gt;
</content>
</entry>
<entry>
<title>altos: Eliminate separate height error filter for accelerometer devices</title>
<updated>2017-08-28T00:40:40+00:00</updated>
<author>
<name>Keith Packard</name>
<email>keithp@keithp.com</email>
</author>
<published>2017-08-27T23:57:13+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ethernal.org/mjb/altos/commit/?id=12ef994a24eb996458092dc35c671d6b824b1576'/>
<id>urn:sha1:12ef994a24eb996458092dc35c671d6b824b1576</id>
<content type='text'>
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 &lt;keithp@keithp.com&gt;
</content>
</entry>
</feed>
