Coder Social home page Coder Social logo

neuropsyol / senda Goto Github PK

View Code? Open in Web Editor NEW

This project forked from aliayub007/senda

5.0 1.0 3.0 14.04 MB

Sensor Data Streamer on android using LSL (Lab Streaming Layer)

License: GNU General Public License v3.0

CMake 0.23% Java 0.98% Shell 0.01% C++ 97.46% C 1.19% Batchfile 0.01% Makefile 0.01% Python 0.01% Perl 0.01% Lua 0.02% Kotlin 0.08%

senda's People

Stargazers

 avatar  avatar  avatar  avatar  avatar

Watchers

 avatar

senda's Issues

Migrate to liblsl-Android bindings

The current solution of including liblsl has multiple issues:
We use an ancient version of liblsl which can not be compiled w/ current versions of the NDK. This leads to several problems: The ancient version of the NDK we use is not available easily on GH actions using pre-packaged workflows. I tried to update the liblsl and abandoned the effort as too painful. Solution: Just use liblsl-Android. liblsl updates come more or less for free, we can declutter our code by a lot, etc...

Refactor the Sensor->LSL data flow.

I already did some work on this, but I am not nearly done. The logic containing the data flow is all over the place, intermixed w/ UI code, mis-using the sensor interface, etc...
Solution: Separate the UI code and the data flow logic.

Evaluate XSense Android App

.. and whether we can stream their data using our app in case we do not succeed in creating an LSL stream from XSense.

This issue will be assigned to Sören once he has a Github account.

Data quality check + visual feeddback

Implement a status indicator for outgoing streams that show whether the streams are receiving data from the built-in sensors when opening the LSL stream.
The indicator can be a simple green bubble, or anything intuitively understandable by the user.

This will be assigned to Sören once he has a Github account.

Automate update of liblsl-Java bindings

The current solution still depends on manual copies of files and edits. Find a way to make the migration possible by e.g. changing a single line in a config file.

Do some SEO

Googling SENDA the original, unmaintained copy on Ali's repository shows up. Make people use this version instead.

Send current location via LSL stream

A minimum viable feature is included now, but the location update rate is rather low und irregular. Find ways to make it more steady and give location updates while the app is in the background.

Consider using resampling

The paper version of SENDA presented the user with a nice and regular, fixed sampling rate, stream from the sensors, but this is essentially a lie: Sensor sampling rates may change all the time. Ask the users if they want the lie or an irregular but honest stream of if they want it configurable. Do not just use the last known sensor value in the "I want it regular" case but maybe consider resampling.

Documentation: user and dev

We need user and developer documentation on

  • how to set up the project in order to add features/fix bugs
  • how to navigate the code
  • how to use the app
  • where to find releases

It would be neat if the documentation can be generated (partially) automatically from the code using Doxygen or something similar. I will investigate, whether that is feasible and also how we can add this step to the Ci/CD pipeline.

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.