add a photo
[web/altusmetrum] / TeleMetrum / index.mdwn
index 8d2a4e58ae1309d99b8fac758a9af7522fdcec44..d5ed480c36fb2af66cbb491b0ab890dd80a651ca 100644 (file)
 # TeleMetrum
 
-<p>
-A quick update as of 25 December 2008.  
-The circuit board artwork is out for fab!
-</p>
-<p>
-A quick update as of 16 December 2008.  
-The ARM7-based 'AltusMetrum' design has been shelved indefinitely.
-Working with Keith Packard, I recently embarked on a complete redesign based on the TI cc1111.
-We got there by deciding we need a low-power RF beacon for post-landing direction finding, learning
-of the existence of this part, then realizing that we could radically simplify things by using it
-as the basis for a completely new avionics design.
-The cc1111 integrates a full 70cm transceiver, 8051 processing core, and peripherals on one chip.
-We add to that a barometric sensor, temperature sensor, accelerometer, eeprom memory, and full LiPo
-battery support powered by a USB interface also used for configuration and post-flight data extraction.
-It looks like we can get all the features we want on a single board for less than the price of most
-commercial altimeter boards, with the only downside being dramatically reduced processing power.
-We have a complete schematic and a first pass PCB layout that is currently
-under review and improvement prior to sending out for raw boards.
-</p>
-<p>
-See the hw/telemetrum tree in our
-<a href="http://git.gag.com">public git repository</a> 
-for the current state of the gEDA design files.
-</p>
-<p>
-We hope to be turning on boards and writing firmware over the 
-Christmas / New Years holiday season.
-Stay tuned!
-</p>
-<hr>
+This is a recording dual-deploy altimeter for high power model rocketry 
+with integrated GPS and telemetry link.  
+
+These are photos of our current version,
+which includes an integrated GPS receiver and patch antenna:
+
+<a href="v0.2/cimg5164-cropped.jpg"> <img src="v0.2/cimg5164-thumb.jpg"></a>
+<a href="v0.2/cimg5171-cropped.jpg"> <img src="v0.2/cimg5171-thumb.jpg"></a>
+
+And this is a photo of our original board with serial port for off-board GPS,
+without the big off-board 1000uF cap from the original ejection circuit:
+
+<a href="v0.1/loadedpair.jpg"> <img src="v0.1/loadedpair-thumb.jpg"></a>
+
+## Motivation ##
+
+Bdale and Keith both own 
+[BeeLine](http://www.bigredbee.com/BeeLine.htm)
+trackers from 
+[Big Red Bee](http://www.bigredbee.com), and are pretty happy with them.
+They use a PIC processor and a TI CC1050 transmitter chip, and
+operate in the ham radio 70cm band.
+
+One weekend while attending a conference together, we got to wondering if 
+we couldn't adapt one to use as a downlink for the
+[AltusMetrum](../AltusMetrum/) altimeter board in addition to direction
+finding after flight.  That caused us to start thinking about other things
+in the design we might want to tweak, and before long we were working on the
+design of a new tracker board derived from the BeeLine design.
+Another friend at the same conference showed us a board he was working on 
+using a different part in the same TI series, that integrated a transceiver
+and CPU on the same chip.
+It didn't take us long to realize that with such a part we could combine and
+simplify things by building a new altimeter with integrated RF link!  And
+after gaining some experience in 2009 with a first version, we realized we
+always want GPS on board, which lead to our current second generation boards.
+
+## Features ##
+
+### User View ###
+
+* Recording altimeter for model rocketry
+* Supports dual deployment (can fire 2 ejection charges)
+* 70cm ham-band transceiver for telemetry downlink
+* Barometric pressure sensor good to 45k feet MSL
+* 1-axis high-g accelerometer for motor characterization
+* On-board, integrated GPS receiver
+* On-board non-volatile memory for flight data storage
+* USB for power, configuration, and data recovery
+* Integrated support for LiPo rechargeable batteries
+* Uses LiPo to fire e-matches, optional support for separate pyro battery
+* 2.75 x 1 inch board designed to fit inside 29mm airframe coupler tube
+
+### Developer View ###
+
+* Hardware Features
+       * [TI CC1111F32](http://focus.ti.com/docs/prod/folders/print/cc1111f32.html) Low Power RF System-on-Chip
+               * Sub-1Ghz transceiver
+               * 8051 MCU
+               * 32k Flash
+               * 4k RAM
+               * USB 2.0
+               * 6 12-bit analog inputs (11 bits with single-ended sensors)
+               * 2 channels of serial I/O
+               * digital I/O
+       * [Atmel AT45DB081D](http://www.atmel.com/dyn/products/product_card.asp?part_id=3819) DataFlash memory
+               * 1M x 8
+               * 256 byte page size
+               * SPI interface
+               * other parts in this Atmel DataFlash series can optionally be used
+       * [SkyTraq](http://www.skytraq.com.tw/) Venus634FLPx GPS receiver
+               * on-board passive patch antenna
+               * U.FL connector with 3.3V DC for optional external amplified antenna
+               * async serial interface
+       * [Freescale MP3H6115A](http://www.freescale.com/webapp/search.partparamdetail.framework?PART_NUMBER=MP3H6115A6U) pressure sensor
+       * [Freescale MMA2202EG](http://www.freescale.com/webapp/search.partparamdetail.framework?PART_NUMBER=MMA2202EG) 50g accelerometer.  Can use 40-200g variants!
+* Software Features
+       * Written mostly in C with some 8051 assembler
+       * Runs from on-chip flash, uses on-chip RAM, stores flight data to
+               serial DataFlash chip
+       * USB serial emulation for "console" interface
+* Tools Used
+       * [gEDA](http://www.gpleda.org/) for schematic capture and PCB layout
+       * [SDCC](http://sdcc.sourceforge.net/) compiler and source debugger
+* Licenses
+       * The hardware is licensed under the [TAPR](http://www.tapr.org) [Open Hardware License](http://www.tapr.org/ohl.html)
+       * The software is licensed [GPL version 2](http://www.gnu.org/licenses/old-licenses/gpl-2.0.html)
+
+### v0.1 Differences  ###
+
+* 2.5 x 1 inch board with all parts mounted on one side
+* 4-pin PicoBlade serial port connector for attachment of external GPS module 
+* USB connector projected approximately 3mm over the edge of the board
+* Debug connector used 4 IC socket pins on 100 mil centers
+* no companion board interface
+* [Microchip 25LC1024](http://www.microchip.com/wwwproducts/Devices.aspx?dDocName=en520389) CMOS serial EEPROM instead of DataFlash
+       * 128k x 8
+       * SPI interface
+* [Microchip MCP9700A](http://www.microchip.com/wwwproducts/Devices.aspx?dDocName=en027103) discrete temperature sensor
+* used 1000uF electrolytic capacitor charged to 5V for pyro supply
+* two LEDs instead of one attached to CPU
+
+The elimination of the discrete temperature sensor and second LED were
+necessary to support the companion board interface added in v0.2.
+
+## [Production History](../production) ##
+
+## [Flight Logs](flightlogs) ##
+
+## Problems ##
+
+* The CC1111F32 is a 36-pin QFN package, which necessitates reflow 
+  soldering.  Since we needed to reflow solder anyway, and because TI used 
+  them in their reference design, we went a little crazy and used 0402 
+  passive parts everywhere.  That means working under a microscope to 
+  place parts!  Without an inspection microscope, loading and testing these
+  boards might be impossible.
+
+* The addition of on-board GPS in v0.2 means that the total power consumption
+  can exceed the rate at which we draw power from the USB interface, 
+  particularly when the GPS is in cold start mode.  This means a battery must 
+  be attached during operation, and also that the battery will only charge 
+  effectively from USB when the board is turned off.
+
+* The v0.1 artwork had three issues, two of which required physical rework
+  on each board.  All of these issues were fixed in v0.2.
+
+       * The USB connector footprint was placed wrong, so that the
+         connector hung out over the edge of the board instead of being 
+         flush.
+       * We needed chip select on the SPI memory.  To fix that, we gave up the 
+         ability to put the accelerometer into self-test mode and used that 
+         GPIO line to pull chip select on the memory, which required two
+         cuts and two jumpers.  
+       * The igniter sense circuits each needed a second resistor to 
+         complete the voltage divider so our 3.3V CPU ADC could read the 
+         5V ejection voltage.  This was fixed by changing two resistor 
+         values, and tacking two additional resistors onto the board
+         with jumpers to ground.
+
+## Artifacts ##
+
+The hardware design current gEDA files are available from 
+[git.gag.com](http://git.gag.com) in the project 
+[hw/telemetrum](http://git.gag.com/?p=hw/telemetrum;a=summary).  
+
+Work on the next version proceeds on the master branch, with occasional
+temporary branches created when Bdale is making some major / speculative
+change.  The 'v0.2' and 'v0.1' branches document what we're actually flying 
+right now on the two respective PCB revisions.  The 'ground' branch has a 
+cut-down schematic used to generate the BOM for partially loading v0.1 boards 
+to used on the ground.  We call the on-the-ground version 'TeleDongle'.
+
+For those who don't have ready access to the gEDA suite, here are pdf snapshots
+of files in more easily readable form.  
+
+* These are from the v0.2 branch:
+ * [schematic](v0.2/telemetrum.pdf)
+ * [pcb artwork](v0.2/telemetrum.pcb.pdf)
+ * [bill of materials](v0.2/partslist.csv)
+* These are as of the working-v0.1 tag:  
+ * [schematic](v0.1/telemetrum.pdf)
+ * [pcb artwork](v0.1/telemetrum.pcb.pdf)
+ * [bill of materials](v0.1/telemetrum.bom)
+
+Our [AltOS](../AltOS) firmware works well enough that we now routinely fly 
+TeleMetrum with no backup.  Rockets with v0.1 boards have exceeded 50g 
+acceleration, been above Mach 1, and reached altitudes greater 
+than 12k feet AGL with great results.  Keith's ground station program 
+called ao-view logs telemetry to disk, displays current and max values for 
+key parameters during flight, and even includes voice synthesis 
+during the flight so that our eyes can stay on the rockets!  We have post
+flight analysis software that makes it easy to extract data from the board,
+analyze it, and even generate KML files for viewing flights in GoogleEarth!
+More details on the software, including full source code and pre-built packages
+can be found on the [AltOS](../AltOS) page on this site.
+
+## Future Plans ##
+
+As of early February 2010, three prototypes of v0.2 are done and working on 
+the bench.  We hope to flight test them shortly, then arrange a production
+run in time to make TeleMetrum available in assembled and tested form to 
+others in the rocketry hobby who have expressed interest in time for the 
+2010 flying season.
+
+Because we understand that not everyone uses Linux, we've started discussing 
+the best way to make a cross-platform ground station program for use with 
+[AltOS](../AltOS), perhaps in Java...