From: Keith Packard Date: Thu, 13 Dec 2012 06:36:59 +0000 (-0800) Subject: Merge branch 'micropeak-1.1' X-Git-Tag: 1.1.9.3~17 X-Git-Url: https://git.gag.com/?p=fw%2Faltos;a=commitdiff_plain;h=688a9458bb03a81e71554c14295d1baacbbbd530;hp=816c6b5d087694a9db9c34cc5ec7671a1487d9b9 Merge branch 'micropeak-1.1' --- diff --git a/doc/micropeak.xsl b/doc/micropeak.xsl index 284d0fb0..91126ce5 100644 --- a/doc/micropeak.xsl +++ b/doc/micropeak.xsl @@ -37,6 +37,13 @@ Updates for version 1.0 release. + + 1.1 + 12 December 2012 + + Add comments about EEPROM storage format and programming jig. + + @@ -272,6 +279,118 @@ NAR #88757, TRA #12200 serve to further protect the switch from launch forces. +
+ On-board data storage + + The ATtiny85 has 512 bytes of non-volatile storage, separate + from the code storage memory. The MicroPeak firmware uses this + to store information about the last completed + flight. Barometric measurements from the ground before launch + and at apogee are stored, and used at power-on to compute the + height of the last flight. + + + In addition to the data used to present the height of the last + flight, MicroPeak also stores barometric information sampled + at regular intervals during the flight. This information can + be extracted from MicroPeak through any AVR programming + tool. + + + MicroPeak EEPROM Data Storage + + + + + + + Address + Size (bytes) + Description + + + + + 0x000 + 4 + Average ground pressure (Pa) + + + 0x004 + 4 + Minimum flight pressure (Pa) + + + 0x008 + 2 + Number of in-flight samples + + + 0x00a … 0x1fe + 2 + Instantaneous flight pressure (Pa) low 16 bits + + + +
+ + All EEPROM data are stored least-significant byte first. The + instantaneous flight pressure data are stored without the + upper 16 bits of data. The upper bits can be reconstructed + from the previous sample, assuming that pressure doesn't + change by more more than 32kPa in a single sample + interval. Note that this pressure data is not + filtered in any way, while both the recorded ground and apogee + pressure values are, so you shouldn't expect the minimum + instantaneous pressure value to match the recorded minimum + pressure value exactly. + + + MicroPeak samples pressure every 96ms, but stores only every + other sample in the EEPROM. This provides for 251 pressure + samples at 192ms intervals, or 48.192s of storage. The clock + used for these samples is a factory calibrated RC circuit + built into the ATtiny85 and is accurate only to within ±10% at + 25°C. So, you can count on the pressure data being accurate, + but speed or acceleration data computed from this will be + limited by the accuracy of this clock. + +
+
+ MicroPeak Programming Interface + + MicroPeak exposes a standard 6-pin AVR programming interface, + but not using the usual 2x3 array of pins on 0.1" + centers. Instead, there is a single row of tiny 0.60mm × + 0.85mm pads on 1.20mm centers exposed near the edge of the + circuit board. We couldn't find any connector that was + small enough to include on the circuit board. + + + In lieu of an actual connector, the easiest way to connect to + the bare pads is through a set of Pogo pins. These + spring-loaded contacts are designed to connect in precisely + this way. We've designed a programming jig, the MicroPeak + Pogo Pin board which provides a standard AVR interface on one + end and a recessed slot for MicroPeak to align the board with + the Pogo Pins. + + + The MicroPeak Pogo Pin board is not a complete AVR programmer, + it is an interface board that provides a 3.3V regulated power + supply to run the MicroPeak via USB and a standard 6-pin AVR + programming interface with the usual 2x3 grid of pins on 0.1" + centers. This can be connected to any AVR programming + dongle. + + + The AVR programming interface cannot run faster than ¼ of the + AVR CPU clock frequency. Because MicroPeak runs at 250kHz to + save power, you must configure your AVR programming system to + clock the AVR programming interface at no faster than + 62.5kHz, or a clock period of 32µS. + +