new Em batch
[web/altusmetrum] / TeleScience / index.mdwn
1 [[!meta title="TeleScience"]]
2 # TeleScience
3
4 This is an expansion board for [TeleMetrum](../TeleMetrum/) intended to 
5 support science projects.  It includes an ARM Cortex M3 processing 
6 platform with 8 megabytes of on-board flash memory for storing collected
7 science data, plus support for 8 NTC thermistors in two banks of 4, 3 
8 solid-state relays, and a large number of analog and digital I/O pins.
9
10 There are no photos of the current prototype version yet, see the history
11 linked at the bottom of this page for photos of the original boards.
12
13 ## Motivation ##
14
15 Bdale's son Robert got interested in mapping the temperatures experienced
16 by nose cones and fins in flights beyond Mach 1, which led us to work with 
17 our good friend Jeff Lane from 
18 [Shockwave Rocketry](http://www.shockwaverocketry.com/) 
19 to instrument some of his nose cones, and to work out how to create 
20 composite fins with sensors embedded for airframe projects
21 [2YikStik](http://www.gag.com/rockets/airframes/2YikStik) and 
22 [YikStik3](http://www.gag.com/rockets/airframes/YikStik3) 
23 in pursuit of that goal.  
24
25 It was easy for us to imagine other experiments that would be facilitated 
26 by having the ability to control a few outputs and log sensor data in
27 syncronization with flight state information logged by TeleMetrum.  We
28 went one step further and created a "companion board protocol" in
29 TeleMetrum that allows data being collected by TeleScience to be included
30 in the radio telemetry stream for live observation of pre-flight and
31 in-flight science data.
32
33 ## Features ##
34
35 ### User View ###
36
37 * Small circuit board mounted near [TeleMetrum](../TeleMetrum/)
38 * Requires [TeleMetrum](../TeleMetrum/) v0.2 or later, as v0.1 does not 
39   have the required companion board interface
40 * 8 NTC thermistor inputs, in 2 banks of 4.  A single through-hole
41   resistor is used to configure each bank for a given thermistor type.
42 * 3 solid-state relays, ideal for things like pushing camera buttons 
43   under program control
44 * all available pins on the processor brought out to headers for 
45   maximum flexibility interfacing additional sensors
46 * On-board 8-megabyte flash memory for data logging.
47 * LiPo battery connector and on-board charger for standalone use
48 * USB interface for programming, development, and flash memory download
49
50 ### Developer View ###
51
52 * Hardware Features
53         * ST Micros [STM32L151](http://www.st.com/internet/mcu/product/248821.jsp) 
54           ARM Cortex M3 based Microcontroller
55         * [Winbond W25Q64CV](http://www.winbond.com/hq/enu/ProductAndSales/ProductLines/FlashMemory/SerialFlash/W25Q64CV.htm) serial flash memory
56         * IXYS [CPC1014](http://www.ixys.com/PartSearchResults.aspx?searchStr=cpc1014&SearchSubmit=Go) OptoMOS Solid State Relays
57         * Maxim Integrated [MAX6691](http://www.maximintegrated.com/datasheet/index.mvp/id/3256) Thermistor Temperature to Pulse Width Converters
58 * Software Features 
59         * based on the ARM port of [AltOS](http://altusmetrum.org/AltOS)
60         * programmed in C using gcc
61         * Runs from on-chip flash, uses on-chip RAM
62 * Tools Used
63         * [gEDA](http://www.gpleda.org/) for schematic capture and PCB layout
64 * Licenses
65         * The hardware is licensed under the [TAPR](http://www.tapr.org) [Open Hardware License](http://www.tapr.org/ohl.html)
66         * The software is licensed [GPL version 2](http://www.gnu.org/licenses/old-licenses/gpl-2.0.html)
67
68 ## Artifacts ##
69
70 A schematic and PC board design exist on [git.gag.com](http://git.gag.com) 
71 in the project 
72 [hw/telescience](http://git.gag.com/?p=hw/telescience;a=summary).
73
74 ## Future Plans ##
75
76 The thermistor conditioning circuits in the v0.1 design were too tightly 
77 coupled to the particular model of EPCOS thermistor that we chose for 
78 [2YikStik](http://www.gag.com/rockets/airframes/2YikStik/) and
79 [YikStik3](http://www.gag.com/rockets/airframes/YikStik3/).  A major 
80 revision of the board led to v0.2 which was never fully evaluated, because
81 the prototypes of TeleScience were lost in the 
82 [Black Forest Fire](http://www.gag.com/blackforestfire.html).
83
84 The biggest hurdle we need to overcome before re-starting this project is
85 deciding what TeleScience should actually be.  The challenge is that if the
86 board is too "generic", it will be hard to use.  If it's too "specific", 
87 knowing what functionality to actually include gets hard...
88
89 As an alternative, if you want to connect custom sensors to a 
90 [TeleMetrum](../TeleMetrum/) or [TeleMega](../TeleMega/) board,
91 you might want to investigate 
92 [AltOSCompanion](https://github.com/bdale/AltOSCompanion), which is an
93 [Arduino](https://www.arduino.cc/) sketch for implementing a custom companion
94 board!
95
96 ## [History of TeleScience](history) ##
97