doc: Update for EasyTimer
authorKeith Packard <keithp@keithp.com>
Sun, 14 Jun 2020 05:40:42 +0000 (22:40 -0700)
committerKeith Packard <keithp@keithp.com>
Sun, 14 Jun 2020 07:33:34 +0000 (00:33 -0700)
Signed-off-by: Keith Packard <keithp@keithp.com>
13 files changed:
doc/Makefile.am
doc/altosui.inc
doc/altusmetrum.txt
doc/config-device.inc
doc/easytimer.inc [new file with mode: 0644]
doc/easytimer.jpg [new file with mode: 0644]
doc/getting-started.inc
doc/pyro-channels.inc
doc/specs.inc
doc/system-operation.inc
doc/updating-firmware.inc
doc/usage.inc
doc/using-am-products.inc

index 464cd988bef3ca242e3f0034cbb68c96721a0cb2..1238ea18e9abca6aa7aa0bcc422d77523349fc5d 100644 (file)
@@ -67,6 +67,7 @@ IMAGES=\
        easymega-v1.0-top.jpg \
        easymini.svg \
        easymini-top.jpg \
+       easytimer.jpg \
        fire-igniter.png \
        graph-configure.png \
        graph-map.png \
@@ -142,6 +143,7 @@ INC_FILES=\
        easymini-device.inc \
        telemega.inc \
        easymega.inc \
+       easytimer.inc \
        installation.inc \
        using-am-products.inc \
        updating-firmware.inc \
index d497ad2fc9ec42f064459d233e20d57805980899..a0aab0bd5edac392a25312fda90e1d5834f213be 100644 (file)
                        similar unit as a programming dongle (pair
                        programming).
                endif::telemetrum,telemini[]
-               ifdef::telemega,easymega,telemetrum[]
+               ifdef::telemega,easymega,easytimer,telemetrum[]
                        TeleMega, EasyMega, TeleMetrum v2 or newer,
-                       EasyMini, TeleBT v3 or newer and TeleDongle v3
+                       EasyMini, EasyTimer, TeleBT v3 or newer and TeleDongle v3
                        or newer are all
-               endif::telemega,easymega,telemetrum[]
-               ifndef::telemega,easymega,telemetrum[]
+               endif::telemega,easymega,easytimer,telemetrum[]
+               ifndef::telemega,easymega,easytimer,telemetrum[]
                        EasyMini is
-               endif::telemega,easymega,telemetrum[]
+               endif::telemega,easymega,easytimer,telemetrum[]
                programmed directly
                over USB (self programming). Please read
                the directions for flashing devices in
index 6016388871fa15edad57373825addaa82bb599ad..c2492b0f40e282e96d68f50274b8e8402100deb7 100644 (file)
@@ -20,6 +20,7 @@ Keith Packard <keithp@keithp.com>; Bdale Garbee <bdale@gag.com>; Bob Finch; Anth
 :telemega: 1
 :easymega: 1
 :telegps: 1
+:easytimer: 1
 :application: AltosUI
 :pdf-stylesdir: .
 :pdf-style: altusmetrum
@@ -45,6 +46,8 @@ Keith Packard <keithp@keithp.com>; Bdale Garbee <bdale@gag.com>; Bob Finch; Anth
 
        include::easymega.adoc[]
 
+       include::easytimer.adoc[]
+
        include::installation.adoc[]
 
        include::using-am-products.adoc[]
index 2e3d47d42dce092fe4ea9cbacb0731a60311ae99..15f9129e4d0dd55cbc5a459909aae2030de38e4a 100644 (file)
@@ -171,7 +171,7 @@ ifdef::altusmetrum[]
                is fired first, followed after a two second
                delay by the 'main' channel.
 
-       ifdef::telemetrum,telemega,easymega[]
+       ifdef::telemetrum,telemega,easymega,easytimer[]
        ==== Pad Orientation
 
                Because they include accelerometers,
@@ -183,15 +183,16 @@ ifdef::altusmetrum[]
                with the antenna pointing aft instead.
 
                Antenna Up::
-               In this mode, the antenna end of the flight
-               computer must point forward, in line with the
-               expected flight path.
+               In this mode, the antenna (or beeper, for devices
+               without an antenna) of the flight computer must point
+               forward, in line with the expected flight path.
 
                Antenna Down::
-               In this mode, the antenna end of the flight
-               computer must point aft, in line with the
-               expected flight path.
-       endif::telemetrum,telemega,easymega[]
+
+               In this mode, the antenna (or beeper, for devices
+               without an antenna) end of the flight computer must
+               point aft, in line with the expected flight path.
+               endif::telemetrum,telemega,easymega,easytimer[]
 
        ==== Beeper Frequency
 
@@ -222,7 +223,7 @@ ifdef::telegps[]
                in the log.
 endif::telegps[]
 
-ifdef::telemega,easymega,telemetrum[]
+ifdef::telemega,easymega,easytimer,telemetrum[]
 
        ==== Calibrate Accelerometer
 
@@ -236,9 +237,9 @@ ifdef::telemega,easymega,telemetrum[]
                Configure Altimeter window and save the new
                calibration values.
 
-endif::telemega,easymega,telemetrum[]
+endif::telemega,easymega,easytimer,telemetrum[]
 
-ifdef::telemega,easymega[]
+ifdef::telemega,easymega,easytimer[]
 
        ==== Configure Pyro Channels
 
@@ -246,8 +247,8 @@ ifdef::telemega,easymega[]
                image::configure-pyro.png[width=400]
 
                This opens a separate window to configure the
-               additional pyro channels available on TeleMega
-               and EasyMega.  One column is presented for
+               additional pyro channels available on TeleMega,
+               EasyMega and EasyTimer.  One column is presented for
                each channel. Each row represents a single
                parameter, if enabled the parameter must meet
                the specified test for the pyro channel to be
@@ -274,4 +275,4 @@ ifdef::telemega,easymega[]
 
                include::pyro-channels.adoc[]
 
-endif::telemega,easymega[]
+endif::telemega,easymega,easytimer[]
diff --git a/doc/easytimer.inc b/doc/easytimer.inc
new file mode 100644 (file)
index 0000000..82689d2
--- /dev/null
@@ -0,0 +1,120 @@
+== EasyTimer
+
+       .EasyTimer Board
+       image::easytimer.jpg[width=400]
+
+       EasyTimer is built on a 0.8 inch by 1½ inch circuit board. It's
+       designed to fit in a 24mm coupler tube.
+
+       EasyTimer is designed to control events during ascent. It has
+       an accelerometer and gyroscope that can measure acceleration
+       and rotation and compute speed and tilt angle. EasyTimer has
+       two pyro channels which can be configured to fire at various
+       points during flight. Because EasyTimer has no barometric
+       sensor, it cannot be used to fire recovery charges at apogee
+       or during descent. EasyTimer is configured using the AltosUI
+       application which is available for Linux, Mac OS X and Windows.
+
+       === EasyTimer Screw Terminals
+       
+               EasyTimer has two sets of four screw terminals near
+               one end of the board. Using the picture above, the top
+               four have connections for pyro channel B and an
+               external battery and the bottom four have connections
+               for pyro circuit A and the power switch. Counting from
+               the left, the connections are as follows:
+
+               .EasyTimer Screw Terminals
+               [options="header",grid="all",cols="2,3,10"]
+               |====
+               |Terminal #|Terminal Name|Description
+               |Top 1
+               |B -
+               |Pyro channel B connection to pyro circuit
+             
+               |Top 2
+               |B +++
+               |Pyro channel B common connection to battery +++
+             
+               |Top 3
+               |Battery +++
+               |Positive external battery terminal
+             
+               |Top 4
+               |Battery -
+               |Negative external battery terminal
+             
+               |Bottom 1
+               |A -
+               |Pyro channel A connection to pyro circuit
+             
+               |Bottom 2
+               |A +++
+               |Pyro channel A common connection to battery +++
+             
+               |Bottom 3
+               |Switch Output
+               |Switch connection to flight computer
+             
+               |Bottom 4
+               |Switch Input
+               |Switch connection to positive battery terminal
+               |====
+
+       === Connecting A Battery To EasyTimer
+
+               There are two possible battery connections on
+               EasyTimer. You can use either method; both feed
+               through the power switch terminals.
+
+               One battery connection is the standard Altus Metrum
+               white JST plug. This mates with single-cell Lithium
+               Polymer batteries sold by Altus Metrum.
+
+               The other is a pair of screw terminals marked 'Battery
+               +' and 'Battery -'. Connect a battery from 4 to 12
+               volts to these terminals, being careful to match polarity.
+
+       === Charging Lithium Batteries
+
+               Because EasyTimer allows for batteries other than the
+               standard Altus Metrum Lithium Polymer cells, it cannot
+               incorporate a battery charger circuit. Therefore, when
+               using a Litium Polymer cell, you'll need an external
+               charger. These are available from Altus Metrum, or
+               from Spark Fun.
+
+       === Using a Separate Pyro Battery with EasyTimer
+       
+               As described above, using an external pyro battery involves
+               connecting the negative battery terminal to the flight
+               computer ground, connecting the positive battery terminal to
+               one of the igniter leads and connecting the other igniter
+               lead to the per-channel pyro circuit connection.
+
+               To connect the negative pyro battery terminal to EasyTimer
+               ground, connect it to the negative external battery
+               connection, top terminal 4.
+
+               Connecting the switched positive battery terminal to the pyro
+               charges must be done separate from EasyTimer, by soldering
+               them together or using some other connector.  Note that for
+               safety, you must put a switch between the pyro battery and
+               the rest of the circuit!
+
+               The other lead from each pyro charge is then inserted into
+               the appropriate per-pyro channel screw terminal (top
+               terminal 1 for pyro channel A charge, bottom terminal 1 for
+               pyro channel B charge).
+
+       === Using an Active Switch with EasyTimer
+       
+               As explained above, an external active switch requires three
+               connections, one to the positive battery terminal, one to
+               the flight computer positive input and one to ground. Use
+               the negative external battery connection, top terminal 4 for
+               ground.
+
+               The positive battery terminal is available on bottom
+               terminal 4, the positive flight computer input is on the
+               bottom terminal 3.
diff --git a/doc/easytimer.jpg b/doc/easytimer.jpg
new file mode 100644 (file)
index 0000000..703e9a1
Binary files /dev/null and b/doc/easytimer.jpg differ
index 5e60986ad1e6baecc1e8005348790f39711be4ff..bf6cbda84ccc86be8399cc6a10d3bc82e5772bbb 100644 (file)
@@ -14,6 +14,7 @@
                charging circuitry.
                endif::telemetrum,telemega,easymega[]
                The Lithium Polymer
+               ifdef::easytimer[EasyTimer, ]
                ifdef::telemini[TeleMini and]
                EasyMini battery can be charged by disconnecting it
                from the board and plugging it into a standalone
@@ -22,6 +23,7 @@
                USB power source.
 
                You can also choose to use another battery with
+               ifdef::easytimer[EasyTimer and]
                EasyMini, anything supplying between 4 and 12 volts should
                work fine (like a standard 9V battery), but if you are planning
                to fire pyro charges, ground testing is required to verify that
index ab5baef0e37cc68d7bca8c24e59a22c28d9bd0a1..1daf2f6e9b9b7bb8257b8da97b311c96c46ac3d7 100644 (file)
@@ -13,12 +13,14 @@ rate during descent is a bit noisy and so be careful when using it
 during these phases of the flight.
 
 Height above pad:: Select a value, and then choose whether the height
-above the launch pad should be above or below that value.
-
-Orientation:: TeleMega and EasyMega contain a 3-axis gyroscope and
-accelerometer which is used to compute the orientation of the
-rocket. A record of orientations over the last 0.64 seconds is kept
-and the largest value within this period is compared with the
+above the launch pad should be above or below that value. Note that
+because EasyTimer has only a low-range accelerometer and no barometer,
+this value will not be very reliable on that device.
+
+Orientation:: TeleMega, EasyMega and EasyTimer contain a 3-axis
+gyroscope and accelerometer which is used to compute the orientation
+of the rocket. A record of orientations over the last 0.64 seconds is
+kept and the largest value within this period is compared with the
 specified value. Note that the tilt angle is not the change in angle
 from the launch pad, but rather absolute relative to gravity—the
 3-axis accelerometer is used to compute the angle of the rocket on the
@@ -89,14 +91,14 @@ through a sequence of states:
    than 200m/s. Ascent rate will greater than zero. Vertical
    acceleration will be less than zero.
 
- * Drogue. The rocket has reached apogee and
-   is heading back down, but is above the
-   configured Main altitude. Ascent rate will be less than zero during
-   this state. Vertical acceleration will be negative until the rocket
-   reaches a terminal descent rate, at which point Vertical
-   acceleration will be zero. Both Ascent rate and Vertical
+ * Drogue. The rocket has reached apogee and is heading back down, but
+   is above the configured Main altitude. Ascent rate will be less
+   than zero during this state. Vertical acceleration will be negative
+   until the rocket reaches a terminal descent rate, at which point
+   Vertical acceleration will be zero. Both Ascent rate and Vertical
    acceleration are very noisy in this state, so be careful when
-   trying to use them to control pyro channels.
+   trying to use them to control pyro channels. This state selection
+   is not available on EasyTimer.
 
  * Main. The rocket is still descending, and
    is below the Main altitude. Ascent rate will be less than zero
@@ -105,7 +107,7 @@ through a sequence of states:
    it will settle down to a zero value once the rocket has reached the
    terminal velocity under the main chute. Ascent rate and Vertical
    acceleration should be much less noisy once the main chute has
-   deployed.
+   deployed. This state selection is not available on EasyTimer.
 
  * Landed. The rocket is no longer moving.
 
index b69d52ee63a78ce2a8efa44632bdfae9d7eb94a0..5c2c83cc626e5eccaf68b77b8883d931cdc52693 100644 (file)
        |3.7V
        endif::easymega[]
 
+       ifdef::easytimer[]
+       |EasyTimer v1.0
+       |-
+       |16g
+       |-
+       |BMX160
+       |-
+       |-
+       |3.7-12V
+       endif::easytimer[]
+       
+       
        |===
 
        <<<<
        |38mm coupler
        endif::easymega[]
 
+       ifdef::easytimer[]
+       |EasyMini
+       |Debug USB Battery
+       |Pyro A Pyro B Battery
+       |0.8 inch (2.03cm)
+       |1½ inch (3.81cm)
+       |24mm coupler
+       endif::easytimer[]
+
        |===
index 6cc9986b150556a283289369c22a5466bf4f3aa2..888e3891c6479941bba2276c6719e1cba5d6016a 100644 (file)
@@ -7,9 +7,9 @@
                fundamental modes, “idle” and “flight”.  Which of these modes
                the firmware operates in is determined at start up
                time.
-               ifdef::telemetrum,telemega,easymega[]
+               ifdef::telemetrum,telemega,easymega,easytimer[]
                For
-               TeleMetrum, TeleMega and EasyMega, which have accelerometers, the mode is
+               TeleMetrum, TeleMega, EasyMega and EasyTimer, which have accelerometers, the mode is
                controlled by the orientation of the
                rocket (well, actually the board, of course...) at the time
                power is switched on.  If the rocket is “nose up”, then
@@ -17,7 +17,7 @@
                launch, so the firmware chooses flight mode.  However, if the
                rocket is more or less horizontal, the firmware instead enters
                idle mode.
-               endif::telemetrum,telemega,easymega[]
+               endif::telemetrum,telemega,easymega,easytimer[]
                Since
                EasyMini doesn't
                have an
index b1047ffa645db07bb20ce7536905f82d6207b6b4..1999a9c77e6a2557458fc97aa07a5888d18d664b 100644 (file)
                        the board.
                        endif::easymega[]
 
+                       ifdef::easytimer[]
+                       EasyTimer::
+
+                       Connect pin 5 and pin 1 of the debug connector, which
+                       is the six holes next to the beeper. Pin 1 can be
+                       identified by the square pad around it, and then the
+                       pins could sequentially across the board, making Pin 5
+                       the one on the other end of the row.
+                       endif::easytimer[]
+
                        ifdef::telemetrum[]
                        TeleMetrum v2 and newer::
 
index 68d08bad8690a821f8b5649f70d788e187383156..4e40240b4df70c1de78b7b38b9bed2011bf0d87e 100644 (file)
                 signals, but no record of the flight will be
                 stored in on-board flash.
 
-               ifdef::easymega,telemega[]
+               ifdef::easymega,telemega,easytimer[]
                |Additional Igniters
                |four very short beeps
-               |Continuity indication for the four additional pyro
-                channels on TeleMega and EasyMega. One high tone for
-                no continuity, one low tone for continuity. These are
+               |Continuity indication for the additional pyro
+                channels on TeleMega, EasyMega and EasyTimer. One high tone for
+                no continuity, one low tone for continuity. On TeleMega and EasyMegay, these are
                 produced after the continuity indicators for the two
                 primary igniter channels.
-               endif::easymega,telemega[]
+               endif::easymega,telemega,easytimer[]
 
                |====
 
                the current state. See below for how to get the flight
                computer to come up in Idle mode at power on.
 
-               ifdef::telemetrum,easymega,telemega[]
+               ifdef::telemetrum,easymega,telemega,easytimer[]
                For flight computers with accelerometers (TeleMetrum,
-               EasyMega and TeleMega), the mode is selected by the
+               EasyMega, TeleMega and EasyTimer), the mode is selected by the
                orientation of the board during the self test
                interval. If the board is pointing upwards as if ready
                to fly, it will enter Flight/Pad mode. Otherwise, it will
                enter Idle mode.
-               endif::telemetrum,easymega,telemega[]
+               endif::telemetrum,easymega,telemega,easytimer[]
 
                ifdef::easymini[]
                For EasyMini, if the USB cable is connected to a
        === Using a Different Kind of Battery
 
                EasyMini
-               ifdef::telemini[and TeleMini v2 are]
-               ifndef::telemini[is]
+               ifdef::easytimer[and EasyTimer are]
+               ifndef::easytimer[is]
                designed to use either a
                lithium polymer battery or any other battery producing
                between 4 and 12 volts, such as a rectangular 9V
                battery.
 
-               ifdef::telemega,easymega,telemetrum[]
+               ifdef::telemega,easymega,telemetrum,telemini[]
                [WARNING]
+               ifdef::telemini[TeleMini, ]
                TeleMega, EasyMega and TeleMetrum are only designed to
                operate off a single-cell Lithium Polymer battery and
                cannot be used with any other kind. Connecting a
                different kind of battery to any of these will destroy
                the board.
-               endif::telemega,easymega,telemetrum[]
+               endif::telemega,easymega,telemetrum,telemini[]
 
        === Using Packet Link Mode
 
index 1c1ff10eccbbd08a7f76a3026af01c12343d5830..6048ee0ef5dca61a5bde88036a59ba78536263cf 100644 (file)
                In the rocket itself, you just need a flight computer
                and a single-cell, 3.7 volt nominal Li-Po rechargeable
                battery.
-               ifdef::telemetrum,telemega,easymega[]
+               ifdef::telemetrum,telemega,easymega,easytimer[]
                An 850mAh battery weighs less than a 9V
-               alkaline battery, and will run a TeleMetrum, TeleMega
-               or EasyMega for hours.
-               endif::telemetrum,telemega,easymega[]
+               alkaline battery, and will run a TeleMetrum, TeleMega,
+               EasyMega or EasyTimer for hours.
+               endif::telemetrum,telemega,easymega,easytimer[]
                A 110mAh battery weighs less
                than a triple A battery and is a good choice for use
                with