Coder Social home page Coder Social logo

volaser-app-old's People

Contributors

mgrau avatar

Stargazers

 avatar

Watchers

 avatar  avatar

volaser-app-old's Issues

bluetooth communication unreliable

Bluetooth communication is very unreliable, with multiple disconnects to the motor and laser occurring during the span of a single measurement. This makes a simple operation take upwards of an hour. It's unclear if the problem is in the app or results from laser/motor hardware.

Tutorial mode

Tutorial mode would be a sequence of screens that would walk the user through the measurement one step at a time. It should have forwards and backwards buttons, with each step annotated with a diagram. The sequence nominally is

  1. Insert probe to base of container, measure to reference point on tripod. Input the depth.
  2. Move laser head to it's own reference point. Measure the depth with laser.
  3. Move laser head to top of tank. Measure depth with laser
  4. Move laser inside of tank. Measure area with laser.
  5. Show computed volumes and GPS coordinates. If these are acceptable, log data point.

Settings are loaded from storage

When the app starts it loads the save settings from asyncstorage (evidenced by the logging console), but these values do not show up in the settings page, or anywhere else they are referenced.

Labels are wrong on measurement page

Currently, the buttons on the MEASURE page do not coincide with the labels in the bottom half of the page (Ex, Probe Depth gives sludge depth and tank depth gives empty depth). I think it would be easiest to label these both the same thing, and my suggesting is depth at starting position and depth and measuring position (where the measuring position is where the area measurement will be taken).

Add ability to take pictures

Add a place to take a picture on the app. It would be helpful to take a picture of the laser when it is set up over the tank, in starting position. This would also make replicating the readings at a later date easier.

Add a progress bar for area measurement

Currently each area measurement takes on the order of a minute. It would be good to have some visual feedback in the app indicating that the measurement is progressing and at what rate.

Change data output format to be CSV

Change the data output format to be CSV, according to the attached table. This won't include the outline or other complex data like images.

When uploading the data: after seeing the work that is being done here at CDD, I think it would be best that the data be uploaded in excel format, that way it can be easily incorporated to the excel sheets that are already made. Also, the surveys for the households when measuring are done using KOBO toolbox, which uploads all of the data in a nice excel file (and there is a lot of data in the surveys). It is easier to add the laser data to the survey data, considering that there is less data for the laser as there is from the survey.

volaser trial week 1.xlsx

Change order of app pages

It would be good to have the DEV page next to the MEASURE page, as while putting the laser
in place, I am constantly switching from one to the other. The data and settings pages are
rarely used when in the field.

Settings page

The app should have a settings page where different physical offsets could be input, such as distance from probe to laser, and horizontal laser offset. Distance from probe to laser should also be saved with the data.

Depth measurement should be made after vertical movement

After a vertical movement of the winch, the app should instruct the laser to make another depth measurement, so it can tell if the laser is too close to the sludge. If it is within some critical threshold (perhaps 10 cm), the downwards movement should be disabled.

data export not in a convenient format for import

The export all data feature creates a json file with a list where each data point is the value of a key 'item'. Instead it should be a list of just the values

Example:
[
{
"item": {
"name": "Test",
"location": {
"speed": 0,
"heading": 0,
"accuracy": 18.63599967956543,
"longitude": 8.5052719,
"altitude": 513.9000244140625,
"latitude": 47.4182443
},
"time": "Tue Oct 23 2018 11:46:14 GMT+0200 (CEST)",
"depth": 0,
"area": 0,
"volume": 0,
"outline": []
},
"index": 0
},
{
"item": {
"name": "Test2",
"location": {
"speed": 0,
"heading": 0,
"accuracy": 18.63599967956543,
"longitude": 8.5052719,
"altitude": 513.9000244140625,
"latitude": 47.4182443
},
"time": "Tue Oct 23 2018 11:46:17 GMT+0200 (CEST)",
"depth": 0,
"area": 0,
"volume": 0,
"outline": []
},
"index": 1
},
{
"item": {
"name": "Test3",
"time": "Thu Oct 25 2018 14:34:48 GMT+0200 (CEST)",
"probeHeight": 0,
"emptyDepth": 0,
"probeDepth": 0,
"areaOutline": [],
"area": 0,
"emptyVolume": 0,
"sludgeVolume": 0,
"location": {
"speed": 0,
"heading": 0,
"accuracy": 18.86199951171875,
"longitude": 8.5091939,
"altitude": 568.5999755859375,
"latitude": 47.4096154
}
},
"index": 5
}
]

should be

[
{
"item": {
"name": "Test",
"location": {},
"time": "Tue Oct 23 2018 11:46:14 GMT+0200 (CEST)",
"depth": 0,
"area": 0,
"volume": 0,
"outline": []
},
"index": 0
},
{
"item": {
"name": "Test2",
"location": {},
"time": "Tue Oct 23 2018 11:46:17 GMT+0200 (CEST)",
"depth": 0,
"area": 0,
"volume": 0,
"outline": []
},
"index": 1
},
{
"item": {
"name": "Test3",
"time": "Thu Oct 25 2018 14:34:48 GMT+0200 (CEST)",
"probeHeight": 0,
"emptyDepth": 0,
"probeDepth": 0,
"areaOutline": [],
"area": 0,
"emptyVolume": 0,
"sludgeVolume": 0,
"location": { }
},
"index": 5
}
]

should be
[
{
"name": "Test",
"location": {},
"time": "Tue Oct 23 2018 11:46:14 GMT+0200 (CEST)",
"depth": 0,
"area": 0,
"volume": 0,
"outline": [],
"index": 0
},
{
"name": "Test2",
"location": {},
"time": "Tue Oct 23 2018 11:46:17 GMT+0200 (CEST)",
"depth": 0,
"area": 0,
"volume": 0,
"outline": [],
"index": 1
},
{
"name": "Test3",
"time": "Thu Oct 25 2018 14:34:48 GMT+0200 (CEST)",
"probeHeight": 0,
"emptyDepth": 0,
"probeDepth": 0,
"areaOutline": [],
"area": 0,
"emptyVolume": 0,
"sludgeVolume": 0,
"location": {},
"index": 5
}
]

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.