add purchase and firmware download links to top of EasyMotor page
[web/altusmetrum] / EasyMotor / index.mdwn
1 [[!meta title="EasyMotor"]]
2 # EasyMotor
3
4 This board is designed for in-flight characterization of research rocket
5 motors.  It records chamber pressure and acceleration to an on-board flash
6 memory chip, the contents of which can be downloaded after flight over USB.  
7
8 EasyMotor version 3 is available from the
9 [Garbee and Garbee](https://shop.gag.com) web store
10 and from our distributors.
11
12 For the latest EasyMotor firmware and related ground station software,
13 please visit the [AltOS](../AltOS) page on this site.  EasyMotor
14 version 3.0 requires AltOS version 1.9.12 or later.
15
16 This is what a production v3 board looks like:
17
18 <a href="v3/top.jpg"> <img src="v3/top-thumb.jpg"></a>
19 <a href="v3/bottom.jpg"> <img src="v3/bottom-thumb.jpg"></a>
20
21 ## Features ##
22
23 ### User View ###
24
25 * Data logger storing motor chamber pressure and acceleration
26 * works with inexpensive 5V analog output pressure sensors
27 * USB for configuration, data recovery, and battery charging
28 * Designed for use with a single-cell LiPo battery
29 * 1.5 x 0.8 inch board
30
31 ### Developer View ###
32
33 * Hardware Features
34         * [NXP LPC11U14](http://www.nxp.com/products/microcontrollers/cortex_m0_m0/LPC11U14FHI33.html) System-on-Chip
35                 * ARM Cortex-M0 MCU
36                 * 32k Flash
37                 * 6k RAM
38                 * USB 2.0
39                 * 8 12-bit analog inputs
40                 * I2C, SPI, async serial
41                 * digital I/O
42         * Analog Devices [ADXL375](https://www.analog.com/en/products/adxl375.html) 3-Axis Digital MEMS Accelerometer
43                 * +- 200g full-scale
44                 * on-chip digitizer
45         * on-board USB-based charger for single-cell LiPo battery 
46         * low noise 5V switching regulator to power pressure sensor
47         * precision divider with 0.1% resistors to scale pressure sensor
48           analog output to match SOC analog input voltage range
49
50 * Software Features
51         * Written mostly in C with some ARM assembler
52         * Runs from on-chip flash, uses on-chip RAM, stores flight data to serial flash
53         * USB serial emulation for "console" interface
54
55 * Tools Used
56         * [lepton-eda](https://github.com/lepton-eda/lepton-eda) for schematic capture
57         * [pcb-rnd](http://repo.hu/projects/pcb-rnd/) for PCB layout
58         * [GCC](http://gcc.gnu.org/) compiler and source debugger
59
60 * Licenses
61         * The hardware is licensed under the [TAPR](http://www.tapr.org) [Open Hardware License](http://www.tapr.org/ohl.html)
62         * The software is licensed [GPL version 2](http://www.gnu.org/licenses/old-licenses/gpl-2.0.html)
63
64 ## Example Installations ##
65
66 There are lots of ways to mount an EasyMotor board, but since we've been
67 asked, here are a few photos from snap-ring case forward closures 
68 machined by Bdale for test flights of EasyMotor.  For launch detection to
69 work, the board must be mounted so the board's long axis is aligned with the
70 axis of flight, and by default the "beeper end" must be towards the nose.
71 Note that these examples all feature earlier versions of EasyMotor that used 
72 a different power supply and battery strategy.  Don't be confused by that!  The
73 production version of EasyMotor uses our standard Altus Metrum LiPo batteries.
74
75 The body of the pressure sensors used are 316 stainless with a 1/8 NPT
76 male boss, so Bdale's usual approach is to drill a 1/8 inch "touch hole" or
77 sampling port all the way through the forward closure, then drill and tap 
78 1/8 NPT female threads part way through the closure thickness.  The hole 
79 gets filled with grease, and then the sensor screwed in.  Since Bdale usually
80 builds airframes that assume the recovery harness can attach to the motor
81 case, several prototype installations depended on the stainless steel sensor
82 body to act as a bolt to attach a bracket that supported both circuit board
83 mounting and recovery harness attachment.
84
85 The first example is a 98mm snap-ring closure, with the sensor and 
86 electronics mounted off-center so a 3/8" all-thread could be used
87 in the center for motor retention in a minimum-diameter-ish airframe.  This
88 motor had a small gap between the forward propellant grain and the forward
89 closure, so having the pressure sampling port off-center wasn't a 
90 problem.  The mounting bracket for the electronics was bent from a bit of
91 1/16" aluminum sheet and screwed to the forward closure with two short 4-40 
92 screws into tapped and drilled mounting holes.  Note that this early version
93 of EasyMotor used an A23 12v alkaline battery in a holder on the bracket. Those
94 batteries were fine for a flight or two, but dealing with them was a hassle,
95 which is one of the reasons the production was designed to use a LiPo.
96
97 <a href="photos/IMG_20200905_112722.jpg"> <img src="photos/IMG_20200905_112722-thumb.jpg"></a>
98
99 This second example is on a 75mm snap-ring closure, and was Bdale's first 
100 attempt using 16-gauge steel to bend a mounting bracket that could also be 
101 used for recovery harness attachment.  Another A23 and holder are taped on 
102 the other side of the sensor not visible in this photo:
103
104 <a href="photos/IMG_20200907_101910.jpg"> <img src="photos/IMG_20200907_101910-thumb.jpg"></a>
105
106 This example is a refinement of the 16-gauge steel strap used to form a 
107 mounting bracket and harness retention point, this time for a 54mm snap-ring 
108 closure.  Bdale flew this setup several times, and the only down-side is that
109 it obvious takes up a few extra inches of airframe length.  Note the quik-link 
110 wrapped in electrical tape to make sure it doesn't flop down and short against 
111 any of the electronics in flight.  Note also a long piece of shooter wire that
112 gets fed through a vent hole in the airframe as a twist-n-tape power switch.
113
114 <a href="photos/IMG_20201010_142952.jpg"> <img src="photos/IMG_20201010_142952-thumb.jpg"></a>
115
116 If machining closures isn't something you want to do, 
117 [Loki Research](https://lokiresearch.com) now sells "experimental bulkheads" 
118 for 54mm and 75mm snap-ring cases that are well suited for mounting a pressure
119 sensor to use with EasyMotor.
120
121 ## Artifacts ##
122
123 Motor characterization products from Altus Metrum are documented in a manual 
124 available in [html](../AltOS/doc/motortest.html) and 
125 [pdf](../AltOS/doc/motortest.pdf) formats.
126
127 The firmware for this product is part of the [AltOS](../AltOS) suite.  Test
128 data can be downloaded, plotted, and exported in CVS form using the altosui
129 ground station executable.
130
131 The current hardware design files are available from 
132 [git.gag.com](http://git.gag.com) in the project 
133 [hw/easymotor](http://git.gag.com/?p=hw/easymotor;a=summary).  
134
135 For easy reference, pdf snapshots of the files used for production version 3
136 are available here:
137
138 * [schematic](v3/easymotor-sch.pdf)
139 * [pcb artwork](v3/easymotor-pcb.pdf)
140 * [bill of materials](v3/partslist.csv)
141
142 ## Availability ##
143
144 Version 3 is in production and available for sale.
145