Difference between revisions of "Turtle Sense/Phase Two"

From Nerds Without Borders
Jump to navigation Jump to search
(more)
(31 intermediate revisions by 3 users not shown)
Line 1: Line 1:
Phase two is starting up.
 
 
 
==People==
 
==People==
 
*[[User:Dave]] -- Electrical engineering / Mechanical engineering
 
*[[User:Dave]] -- Electrical engineering / Mechanical engineering
Line 8: Line 6:
 
*[[User:Chuck]] -- Sea Turtle community outreach / Materials
 
*[[User:Chuck]] -- Sea Turtle community outreach / Materials
 
*[[User:Chris]] -- Web Server Admin
 
*[[User:Chris]] -- Web Server Admin
*[[User:Mark]] -- Web design
+
*[[User:Mark]] -- Web Application Development
 
*[[User:Britta]] -- National Park Service Biologist
 
*[[User:Britta]] -- National Park Service Biologist
 +
*[[User:Trebor|User:trebor]] -- Web visualizations
  
:''[[Turtle Sense/Division of labor|initial discussions about the division of labor]]
 
  
 
==Overview==
 
==Overview==
The plan for Phase Two is to create about 10 communications towers and 20 smart sensors for installation in the Outer Banks of North Carolina during the Spring and Summer of 2013.  When nests are discovered by park personnel, the nests are uncovered, the eggs counted, and a DNA sample is taken.  At that time, a smart sensors the size of a turtle egg will be placed on top of the turtle nests before the excavated sand is filled back in to cover the site.  The smart sensor will measure motion and temperature in the nest, with the hope of being able to determine when hatching is imminent.  The smart sensor is connected to a communications tower which will send out regular reports on the activity in the nest using M2M technology.  The text file reports are FTP'd to a website directly from the communications tower.
+
When nests are discovered by park personnel, they are uncovered, the eggs counted, and a DNA sample is taken.  At that time, a smart sensor the size of a turtle egg is placed on top of the turtle nest before the excavated sand is filled back in to cover the site.  The smart sensor measures motion and temperature in the nest, and the data collected is used to predict when hatching is imminent.  The smart sensor is connected to a communications tower which sends out regular reports on the activity in the nest using M2M technology.  The text file reports are FTP'd to a website directly from the communications tower. During Phase Two we created test units, one registration units, 8 communications towers and 24 smart sensors for installation in the Outer Banks of North Carolina startin in the Spring of 2014. Many of the sensors can be used in more than one nest per season, so Data can be collected from roughly 40 nests per season. The data is analyzed as it is collected to attempt to predict imminent hatching.
 +
 
 +
===Commercial options===
 +
Before developing the system, other commercially available data recording systems were evaluated to see if anything that would meet our requirements was available.  None of the options we found were not low enough power to fit our needs, and none provided the data we were hoping to collect.  The closest matches we found would have required as much or almost as much custom engineering on our part to make it work, and there was no cost benefit to going that route.
 +
*[[Chuck's research on data recorders]]
  
 +
==Hardware components==
 
===Smart Sensor===
 
===Smart Sensor===
The Smart Sensor has a 3-axis motion sensor (accelerometer) and temperature sensor connected to a very low power microprocessorThere is also an RS485 transceiver chip which connects to the communications tower via a shielded Cat5 cable.  The smart sensor can be programmed to take readings 12.5, 25, 50, 100, 200 or 400 times every second. Each reading is compared with the previous reading to determine the change in acceleration -- or "jolt"Rather than record each jolt, the sensor counts how many readings have reached approximately 25 different magnitude levelsThese magnitude levels (which we call "bins counters") are in a logarithmic scaleEach bin is the square root of 2 larger than the nextWe keep count for a variable amount of time (between 1 and 6 minutes) and then start a new set record with a new set of bins.  This allows us to track how much motion there was at multiple magnitudes over time.
+
The Phase One design used plastic ping-pong balls (not good ping-pong balls, but cheap plastic knock offs) and a temperature/motion sensor pre-installed on a small circuit board ([https://www.sparkfun.com/products/11446 Qty 1 Price=$14.95])Assembly involved cutting a small slot in a ball, putting in some silicone caulk, inserting a sensor board attached to a cable into the caulk, and then filling the rest of the ball with caulkA ball cut in half covered the slot and makes a thorough seal with the silicone.  This design was abandoned for several reasonsThe silicone did not fully set, even after a few months in the field.  The sensor was unreliable, which may have been because it was connected directly to the microprocessor via the long Cat 5 cable and communications were using a very slow bit-banged SPI connectionTo improve communications we decided to put transceivers on both sides of the cableBy adding a microprocessor to the sensor, most of the processing could happen in the sensor assemblyThe tranceivers are on for just a few seconds a day, for the upload of information from the sensor to the comm tower.  This results in a Smart Sensor with very small power requirements.
  
===Communications Tower===
+
The Smart Sensor has a 3-axis motion sensor (accelerometer) and temperature sensor connected to a very low power TI MSP430FR series microprocessor.  There is also an RS485 transceiver chip which connects to the communications tower via a shielded Cat5 cable.  The smart sensor can be programmed to take readings 12.5, 25, 50, 100, 200 or 400 times every second.  Each reading is compared with the previous reading to determine the change in acceleration -- or "jolt".  Rather than record each jolt, the sensor counts how many readings have reached approximately 25 different magnitude levelsThese magnitude levels (which we call "bins counters") are in a logarithmic scale.  Each bin is the square root of 2 larger than the previous oneWe keep count for a variable amount of time (between 1 and 6 minutes) and then start a new set record with a new set of binsThis allows us to track how much motion there was at multiple magnitudes over time.
Since it is not possible to make telemetry connections under wet salty sand, the smart sensors are connected to a communications tower.  The design is based around creating a custom processing mother board connected to an off-the-shelf telemetry board. The mother board has a very low power microprocessor which controls and monitors the activity of the smart sensor and controls the telemetry board.  There is also a power supply, a RS485 telemetry chip and connectors for future expansion.  The electronics are mounted in 3 inch PVC pipe and fittings anchored in a 5 gallon bucket filled with concreteThe concrete base and Cat 5 cable are buried in the sand. The The tower sends text reports to our web space via an FTP connection using the telemetry board once a day when the nests are not very active, and increases to 6 times a day when the nest becomes more activeSince the communications tower only makes one to 6 reports a day, The microprocessor turns the telemetry board on and off, so that it consumes no power when it is not being used.
 
  
===Hand-Held Registration Unit===
+
===Communications tower board===
A communications unit is mounted in a small hand-held unit so that it can be taken in the field when nests are excavatedThis allows park service personnel to carry just the light-weight sensors and the hand-held unit to the nest sitesLater, the heavy communications towers can be brought in.  The Hand-Held units have GPS capabilityThey are programmed to test the sensors to make sure they are functioning properly, get a GPS reading, check for a good cell connection, and get the local time and date from the cell phone network.  The date, time and GPS location are sent to the sensor, so that all this information will be available to the communications tower when it eventually connected.
+
Since it is not possible to make telemetry connections under wet salty sand, the smart sensors are connected to a communications towerThe design is based around creating a custom processing mother board connected to an off-the-shelf telemetry board. The communications board has a very low power  TI MSP430FR series microprocessor which controls and monitors the activity of the smart sensor and controls the telemetry boardThere is also a power supply, a RS485 telemetry chip and connectors for future expansion.  The electronics are mounted inside a 3 inch PVC pipe and fittings anchored in a bucket filled with concrete.  The concrete base and Cat 5 cable are buried in the sand. The The tower sends text reports to our web space via an FTP connection using the telemetry board.  The frequency of the reports starts out a one a day when the nests are new and not very active.  Later the frequency increases to 6 times a day as the nest becomes more activeSince the communications tower only makes one to 6 reports a day, The microprocessor turns the telemetry board on and off, so that it consumes no power when it is not being used.
  
 +
====Telemetry board====
 +
We are using [http://www.janus-rc.com/terminuscf.html plug in Terminus boards] made by Janus. One board works with AT&T, T-mobile and many international GSM networks.  Another works with Verizon.  The boards are interchangeable so both will plug into our motherboard.  The cost is roughly $140 qty 1 and are [http://www.janus-rc.com/terminuscf.html available from the manufacturer, Janus].  Janus has generously offered us a discount on their boards.
  
== Engineering ==
+
===Hand-held registration unit===
== Commercial options==
+
A communications board is mounted in a small hand-held unit so that it can be taken in the field when nests are first discoveredThis allows park service personnel to carry just the light-weight sensors and the hand-held unit to the nest sites.  Later, the much heavier and bulkier communications towers can be brought in.  The Hand-Held units have GPS capability.  They are programmed to test the sensors to make sure they are functioning properly, get a GPS reading, check for good cell reception, and get the local time and date from the cellular network.  The date, time and GPS location are sent to the sensor, so that all this information will be available to the communications tower when it eventually connected.
Before proceeding, we researched other commercially available data recording systems to see if anything that would meet our requirements was availableNone of the options we found were low enough power to fit our needs, and none provided the data we were hoping to collect.  The closest matches we found would have required as much or almost as much custom engineering on our part to make it work, and there was no cost benefit to going that route.
 
*[[Chuck's research on data recorders]]
 
===Components===
 
  
====Turtle egg sensor====
+
===Other components===
This would be unchanged from the phase one design that uses plastic ping-pong balls (not good ping-pong balls, but cheap plastic knock offs) and a temperature/motion sensor pre-installed on a small circuit board ([https://www.sparkfun.com/products/11446 Qty 1 Price=$14.95]). Assembly involves cutting a small slot in a ball, putting in some silicone caulk, inserting a sensor board attached to a cable into the caulk, and then filling the rest of the ball with caulk.  A  ball cut in half covers the slot and makes a thorough seal with the silicone.
+
The only other components necessary are the cable and connector for the turtle egg sensor, one antenna for the communications tower (the hand held unit has an extra antenna for GPS.) The units should operate for roughly 4 months running on 4 or 8 low self-discharge NiMH Batteries.   Also, anyone creating these devices will need the hardware necessary for programming the microprocessors.
  
====Mother board====
+
==Cellular service==
We are creating two prototypes of the mother board.  One will have through-hole components and the second has primarily surface-mounted partsThe through-hole hole mother board has headers for attaching a pre-fabricated processing board based on the [http://www.ti.com/lsds/ti/microcontroller/16-bit_msp430/overview.page TI MSP430 CPU] and another two rows of headers for a prefabricated telemetry board.  The surface-mount board only has headers for the telemetry board.  The circuitry on the pre-fabricated processing board is duplicated almost exactly on the surface mount boardsBoth boards are functionally equivalent and will operate identically with the same software.
+
We arranged for cellular service through m2mAIR which is part of TELIT, the manufacture of the cellular modules used in the Janus plug-in boardsThis service is cost effective for hosting a large number of devices, as they can all be in the same account with one monthly fee.  The devices are also charged for the data used by each device, but the quota is pooled (shared) between all the devices, and the data rate charges can be modified month by monthDuring periods of little or no activity, the data plans can be throttled back to keep the fees to a minimum.
  
By creating two versions of the mother board, we can make the design useful to more people, and ultimately help protect more turtles. The through-hole board is easy to assemble for anyone with basic electronic soldering experience (think hacker space events and high schoolers)The surface mount board is designed for mass production and is very difficult to assemble without expert soldering skills and magnification because the parts are much smaller, there are many more of them (because it does not use the prefabricated processor board) and surface mounted parts are not designed for hand assembly.  The surface-mount board is therefore optimized for automated production in larger quantities.  In large quantities the cost of components and assembly is competitive with the cost of just the components of the through-hole boardWhile the design of the surface mount board is much more complicated than the through-hole board, it solves the problem of having to find volunteer labor for assembly.
+
==Web design and Database==
 +
All reports are uploaded to our web-space. The reports are comma separated text files with headings and labels, so they can be read by people as well as computersWe are beginning work on a database to store all the data.  When reports are uploaded, the communications units also check the webspace for a new parameter file and download it if it is found.  The parameter file has settings that effect the behavior of the devicesHere are some of the things that can be changed:
  
While both the telemetry and processing boards already have their own power regulators built in, but there needs to be an additional power regulator for the telemetry board on the mother board to regulate battery power down to the voltage required by the telemetry board. The power regulator for the telemetry board can be totally powered down most of the time, and then powered up when data needs to be uploaded (typically just once a day). This greatly reduces the power requirements of the unit.  Depending upon how frequently data is uploaded, the units will operate for many months on a single battery charge.  The surface-mount board has two power supplies, one for the telemetry board and the other for the micro-processor.
+
*The frequency of reporting during inactive days
 +
*The frequency of reporting during active days
 +
*The number of inactive days
 +
*The number of records per report
 +
*How frequently samples are read by the sensor (12.5, 25, 50,100, 200 or 400 times per second)
 +
*All of the other settings possible for the sensor
 +
*Whether reports are verbose (labels on all the fields) or just data
 +
*Whether temperatures are calibrated
  
The custom circuit boards are 2.5 inches by 3.8 inches.  Three of these boards can be purchased for as little as $51 plus shipping.    For larger production runs the price would be much less per unit (about $5 each for a run of 100 including shipping).  Other components on the board total between $15 (surface mount) to $22 (through hole).  The through hole board also needs a processing board which adds about $18.  The $25 savings in parts for the surface mount board is about the same as the cost of having it assembledThe total cost per board is about $40 either way.
+
Work has started on designing a database to collect all the data in the reports, and a website to give people access to the dataThis work is just in its preliminary stages in anticipation of Phase 3.
 +
* [[Turtle Sense/Website design]]
 +
* [[Turtle Sense/Database design]]
  
====Processing board====
+
==Embedded code==
For the through-hole board we usea pre-assembled processing board made by Oilmex Ltd, that is based on the the ultra-low-power [http://www.ti.com/lsds/ti/microcontroller/16-bit_msp430/overview.page MSP430FR5739 processor by Texas Instruments]. The [https://www.olimex.com/Products/MSP430/Header/MSP430-HFR5739/ MSP430-HFR5739 board] has all the essential components needed. There is a header on the board for easy programming, and a connector which we can use for plugging in the cable to the turtle egg sensor. The MSP430FR5739 CPU has 16K Bytes program FRAM, 1024 Bytes SRAM, 10-bit A/D converter, 16-channel comparator with voltage reference generation and hysteresis capabilities which we can use for monitoring the battery voltage, three enhanced serial channels (capable of I2C, SPI, or UART protocols),  hardware multiplier, real-time clock, five 16-bit timers, and more. The board also has power supply filtering capacitor and a 3.3V voltage regulator.  There are two rows of headers for each pin of the microprocessor which we will use to plug this board into the mother board.  The dimension of the board is 2.15" × 1.10".  The boards cost only $18.13 qty 1 and are [http://microcontrollershop.com/product_info.php?products_id=5413 available from microcontrollershop.com].
+
There are essentially three devices that need embedded code. The smart sensor, the communications tower units, and the hand-held registration units. All three of these devices use the same microprocessor, and two of them use the same circuit board.  A good deal of the embedded code is shared in the three applications..
  
The circuitry on the processing board is duplicated on our surface mount board almost exactly.  The only difference is we have omitted one auxiliary button which we do not need.
+
All the code was written in C using TI's Code Composer Studio which is free for developers of code that is smaller than 16K.
 
 
====Telemetry board====
 
We plan on using [http://www.janus-rc.com/terminuscf.html plug in Terminus boards] made by Janus.  The Janus GSM865CF v1.1 GSM/GPRS Modem with GPS works with AT&T and T-mobile.  For Verizon we can use the CDMA864CF v3.0.  The boards are interchangeable and will plug into our motherboard.  The cost is roughly $140 qty 1 and are [http://www.janus-rc.com/terminuscf.htmlavailable from the manufacturer, Janus].
 
  
====Other components====
+
The code is fully documented and can be seen on GITHUB:
The only other components necessary are the cable and connector for the turtle egg sensor (a couple of bucks at most), an antenna for the telemetry board (GSM and GPS), which costs about $20 (perhaps more if reception is a problem). The units should operate for roughly 4 months running on 4 or 8 low self-discharge NiMH Batteries. The batteries and holder (TBD) cost about $25.  Also, anyone creating these devices will need the hardware necessary for programming the microprocessor (more about this later).
+
*[https://github.com/NerdsWithoutBorders/Turtle-Sense-Smart-Sensor Smart Sensor embedded code]
 +
*[https://github.com/NerdsWithoutBorders/TurtleSense-Comm-Head Communications tower embedded code]
 +
*[https://github.com/NerdsWithoutBorders/TurtleSense-HandHeld-communicator Registration unit embedded code]
  
The hardware cost of the electronics is about $250 per unit after start up expenses, and not counting telephony charges, taxes and shipping.
+
==Parts lists==
 +
* [https://dl.dropboxusercontent.com/u/26861868/Turtle%20Sense%20Public%20Files/Turtle%20Sense%20Communicator%20PCB%20v.0.25%20--%20Bill%20of%20Materials.xls Turtle Sense Communications board parts]
 +
* [https://dl.dropboxusercontent.com/u/26861868/Turtle%20Sense%20Public%20Files/Turtle%20Sense%20Smart%20Sensor%20PCB%20v.0.23a%20--%20Bill%20of%20Materials.xls Turtle Sense Smart Sensor board parts]
 +
* [[Turtle Sense Other parts]]
  
====Parts list====
+
==Schematics and System design==
 +
* [[Block Diagram of System]]
 +
* [[Turtle Sense Smart Sensor PCB Schematic v.0.24|Smart Sensor PCB 0.24 schematic]]
 +
* [[Turtle Sense Smart Sensor board v.0.24|Smart Sensor PCB 0.24 description]]
 +
* [[Turtle Sense Communications PCB Schematic v.0.25a|Communications PCB 0.25a schematic]]
 +
* [[Turtle Sense communications board v.0.25a|Communications PCB 0.25a description]]
  
===Schematic and Board design===
+
==Circuit Board Fabrication==
===Microprocessor Programming===
+
* [[Turtle Sense -- Manufacturing the Communicator and Smart Sensor printed circuit boards|Manufacturing the Communicator and Smart Sensor printed circuit boards]]
===Board Assembly===
 
  
==Web development==
+
==Assembly Instructions==
 +
* [[Turtle Sense cable assembly instructions|Cable assembly instructions]]
 +
* [[Turtle Sense casting instructions for Smart Sensor and connectors|Casting instructions for Smart Sensor and connectors]]
 +
* [[Turtle Sense communicator PVC housing assembly instructions|Communicator PVC housing assembly instructions]]
 +
* [[Turtle Sense communicator housing final assembly|Communicator housing final assembly]]
 +
==User Guide ==
 +
* [[Turtle Sense nest site installation instructions|Nest site installation instructions]]
 +
* [[Turtle Sense nest monitoring instructions|Nest site monitoring instructions]]
 +
* [[Turtle Sense equipment maintenance instructions|Equipment maintenance instructions]]

Revision as of 15:40, 6 July 2015

People


Overview

When nests are discovered by park personnel, they are uncovered, the eggs counted, and a DNA sample is taken. At that time, a smart sensor the size of a turtle egg is placed on top of the turtle nest before the excavated sand is filled back in to cover the site. The smart sensor measures motion and temperature in the nest, and the data collected is used to predict when hatching is imminent. The smart sensor is connected to a communications tower which sends out regular reports on the activity in the nest using M2M technology. The text file reports are FTP'd to a website directly from the communications tower. During Phase Two we created test units, one registration units, 8 communications towers and 24 smart sensors for installation in the Outer Banks of North Carolina startin in the Spring of 2014. Many of the sensors can be used in more than one nest per season, so Data can be collected from roughly 40 nests per season. The data is analyzed as it is collected to attempt to predict imminent hatching.

Commercial options

Before developing the system, other commercially available data recording systems were evaluated to see if anything that would meet our requirements was available. None of the options we found were not low enough power to fit our needs, and none provided the data we were hoping to collect. The closest matches we found would have required as much or almost as much custom engineering on our part to make it work, and there was no cost benefit to going that route.

Hardware components

Smart Sensor

The Phase One design used plastic ping-pong balls (not good ping-pong balls, but cheap plastic knock offs) and a temperature/motion sensor pre-installed on a small circuit board (Qty 1 Price=$14.95). Assembly involved cutting a small slot in a ball, putting in some silicone caulk, inserting a sensor board attached to a cable into the caulk, and then filling the rest of the ball with caulk. A ball cut in half covered the slot and makes a thorough seal with the silicone. This design was abandoned for several reasons. The silicone did not fully set, even after a few months in the field. The sensor was unreliable, which may have been because it was connected directly to the microprocessor via the long Cat 5 cable and communications were using a very slow bit-banged SPI connection. To improve communications we decided to put transceivers on both sides of the cable. By adding a microprocessor to the sensor, most of the processing could happen in the sensor assembly. The tranceivers are on for just a few seconds a day, for the upload of information from the sensor to the comm tower. This results in a Smart Sensor with very small power requirements.

The Smart Sensor has a 3-axis motion sensor (accelerometer) and temperature sensor connected to a very low power TI MSP430FR series microprocessor. There is also an RS485 transceiver chip which connects to the communications tower via a shielded Cat5 cable. The smart sensor can be programmed to take readings 12.5, 25, 50, 100, 200 or 400 times every second. Each reading is compared with the previous reading to determine the change in acceleration -- or "jolt". Rather than record each jolt, the sensor counts how many readings have reached approximately 25 different magnitude levels. These magnitude levels (which we call "bins counters") are in a logarithmic scale. Each bin is the square root of 2 larger than the previous one. We keep count for a variable amount of time (between 1 and 6 minutes) and then start a new set record with a new set of bins. This allows us to track how much motion there was at multiple magnitudes over time.

Communications tower board

Since it is not possible to make telemetry connections under wet salty sand, the smart sensors are connected to a communications tower. The design is based around creating a custom processing mother board connected to an off-the-shelf telemetry board. The communications board has a very low power TI MSP430FR series microprocessor which controls and monitors the activity of the smart sensor and controls the telemetry board. There is also a power supply, a RS485 telemetry chip and connectors for future expansion. The electronics are mounted inside a 3 inch PVC pipe and fittings anchored in a bucket filled with concrete. The concrete base and Cat 5 cable are buried in the sand. The The tower sends text reports to our web space via an FTP connection using the telemetry board. The frequency of the reports starts out a one a day when the nests are new and not very active. Later the frequency increases to 6 times a day as the nest becomes more active. Since the communications tower only makes one to 6 reports a day, The microprocessor turns the telemetry board on and off, so that it consumes no power when it is not being used.

Telemetry board

We are using plug in Terminus boards made by Janus. One board works with AT&T, T-mobile and many international GSM networks. Another works with Verizon. The boards are interchangeable so both will plug into our motherboard. The cost is roughly $140 qty 1 and are available from the manufacturer, Janus. Janus has generously offered us a discount on their boards.

Hand-held registration unit

A communications board is mounted in a small hand-held unit so that it can be taken in the field when nests are first discovered. This allows park service personnel to carry just the light-weight sensors and the hand-held unit to the nest sites. Later, the much heavier and bulkier communications towers can be brought in. The Hand-Held units have GPS capability. They are programmed to test the sensors to make sure they are functioning properly, get a GPS reading, check for good cell reception, and get the local time and date from the cellular network. The date, time and GPS location are sent to the sensor, so that all this information will be available to the communications tower when it eventually connected.

Other components

The only other components necessary are the cable and connector for the turtle egg sensor, one antenna for the communications tower (the hand held unit has an extra antenna for GPS.) The units should operate for roughly 4 months running on 4 or 8 low self-discharge NiMH Batteries. Also, anyone creating these devices will need the hardware necessary for programming the microprocessors.

Cellular service

We arranged for cellular service through m2mAIR which is part of TELIT, the manufacture of the cellular modules used in the Janus plug-in boards. This service is cost effective for hosting a large number of devices, as they can all be in the same account with one monthly fee. The devices are also charged for the data used by each device, but the quota is pooled (shared) between all the devices, and the data rate charges can be modified month by month. During periods of little or no activity, the data plans can be throttled back to keep the fees to a minimum.

Web design and Database

All reports are uploaded to our web-space. The reports are comma separated text files with headings and labels, so they can be read by people as well as computers. We are beginning work on a database to store all the data. When reports are uploaded, the communications units also check the webspace for a new parameter file and download it if it is found. The parameter file has settings that effect the behavior of the devices. Here are some of the things that can be changed:

  • The frequency of reporting during inactive days
  • The frequency of reporting during active days
  • The number of inactive days
  • The number of records per report
  • How frequently samples are read by the sensor (12.5, 25, 50,100, 200 or 400 times per second)
  • All of the other settings possible for the sensor
  • Whether reports are verbose (labels on all the fields) or just data
  • Whether temperatures are calibrated

Work has started on designing a database to collect all the data in the reports, and a website to give people access to the data. This work is just in its preliminary stages in anticipation of Phase 3.

Embedded code

There are essentially three devices that need embedded code. The smart sensor, the communications tower units, and the hand-held registration units. All three of these devices use the same microprocessor, and two of them use the same circuit board. A good deal of the embedded code is shared in the three applications..

All the code was written in C using TI's Code Composer Studio which is free for developers of code that is smaller than 16K.

The code is fully documented and can be seen on GITHUB:

Parts lists

Schematics and System design

Circuit Board Fabrication

Assembly Instructions

User Guide