Please read everything before responding. Please cover all of the items called for in your response.
We have a Sensor tag CC2650 from TI. You can get product information from this link: http://www.ti.com/ww/en/wireless_connectivity/sensortag2015/?INTC=SensorTag&HQS=sensortag
To update the on-board user created software application or download the firmware into Sensor tag, you need to use cc-Devpack-debug : http://www.ti.com/tool/cc-devpack-debug
The stock firmware of Sensor tag is already publishing the data of 10 DOF (3-axis accelerometer combined with a 3-axis gyroscope & combined with a magnetometer (compass), with a Baromic pressure sensor.) over to Bluetooth if connected to any receiving device.
You will create the following…
A Mobile app (Android) talking to the CC2650 via Bluetooth.
There will be 3 operating modes of the device: Off, Calibrate, Run. Settable via the Mobile app.
In Off mode, the device (Sensor Tag) will not repeatedly publish data over to Bluetooth.
In calibrate mode, the device will store two sets of 10DOFs current data into its memory. Each is stored via the mobile app by a user input. Let us call them A & B positions.
For example, one will keep the device in Horizontal position (Position A) & tell the Device to store all present values of 10 DOFs to memory location. You might require to do calculation on the available raw data (from 10 DOFs) to determine the relative position, rotation & angular degree of the device.
Then the user will move/take the device to Position B & tell the device to store all present values of 10 DOFs into other memory location (different from the previous location – so both memory will not get overlap).
In Run mode, the device will be moved by user & may be anywhere in 3D space between positions A & B.
Now, whenever the device finds nearby receiver Bluetooth device (i.e. Mobile/Tab), it will transmit the current relative position (computed from all 10 DOFs data in terms of relative Position as a percentage). Also whether the present status of device is in
• Position A or
• Position B or
• it is moving towards Position A->B or
• it is moving towards Position B->A.
The device will be mounted outside & will have impact of wind etc. Also there will be inherent vibrations on the mounting lines. So some filtering & smoothing will need to be done also.
You must not use any third party library. If you have to, provide source code with it.
You need to develop the above solution in latest version of Android Studio (latest SDK).
Our approx. range to measure position : 5 cm to 50 cm
Accuracy required : 0.5 cm
Angular Degrees : 0-360
Accuracy : 1 deg
For your reference you can view some general reference video here:
Final payment will be done after complete system delivery & any loaned articles are returned.
You have to provide training to us for at least 8 hours to explain the coding topology etc. of the project. The budget is flexible.
Complete source code with detailed documentation for this project, need to be submitted on daily basis. The code & all deliverable will become our property. Please specify your team's hours (in GMT) when they will be readily available via phone etc.
We expect a week time of delivery from you after the award. Provide us with rough milestones tied to payments. No upfront. The sensortag device can be made available to the awardee, if requested.
Delays will cause problems for our project.
DO NOT PROVIDE ANY IRRELEVANT INFO IN YOUR RESPONSE. To save everyone's time, provide enough relevant info in your response so we do not have to ask any questions. If you would like to share other info about yourself, we shall engage into another discussion later on for this purpose.
Only serious contenders need to apply & we shall assume you have understood & accept all conditions, unless specified otherwise. Your response will need to be a binding for 20 days after bidding.
You need to provide daily update on your work status.
The developed code will be our own property, you are bound to not provide or use it elsewhere without our prior permission.