SDK and LibMuse Android


#1

A big thank you to the Interaxon programmers; I just compiled your example app with Google’s Studio 64 to my nexus 7 and it works fine. I also find the latest version of the SDK works better than ever; connects on the first time and no drop-offs.
Hey Musers, any apps yet?


#2

I’ve done one :slight_smile:


#3

I’ve done one :slight_smile:


#4

And I’ve just got it on Google Play, but my Samsung Tablet is not here now, so will give my feedback latter.

Congratulations Enigma644 ! Visually looks great, and the various options for configurations suggests a great care in development. That’s the kind of application that I’ve seen many people asking for since last year.

With regards to your other post about saving .MUSE formatted files, I haven’t answered there waiting from a first response from the Muse Team, but nothing until now, so I would suggest you:

  • take a look at the Muse-Player source code, specifically Output_Handler.py and Muse_v2.py.

I believe that the class ProtoBufFileWriter has everything you need to port the code to any other developping language - creating an object MuseDataCollection(), and add the readings with type, format, data itself, etc… and finally writing to a file with the method MuseDataCollection.SerializeToString()

Good Luck !

Eduardo


#5

That’s great, thank you for your help! I found everything I needed in those files.
Version 1.2 of my app is now out with a Muse Protocol Buffer recording option as well as a proper clinical raw EEG view :slight_smile:



#6

Just got your app and it works fine on my nexus 7. Great to see your updating it, it has the two things I really wanted; saving the raw data to an excel file and a real time raw view. One question; the values are 800 microvolts too high (from my experience they are typically 20 to 100) why is this?


#7

Hey Unawoo,

That’s a constant DC offset in the Muse data. The actual amplitude of the signals is within the expected range for EEG/EMG/ECG. I answered a similar question here: http://forum.choosemuse.com/forum/de…hon-matplotlib

There will always be a DC offset in the EEG data. The offset is in REF as well as the data, because due to the amplifier configuration in Muse the DC difference is not amplified, just the AC difference is. The offset appears un-amplified at the input to our ADC, and is approximately at the ADC’s midpoint. If you use the conversion factor that we mention in our documentation to convert amplified ADC values to uV, this comes out to around 800uV. However, the conversion factor is calculated to account for AC signals that have been amplified, and remember, the DC offset does not get amplified.

So the 800uV mean is not [I]really[/I] 800uV. But it’s not [I]really[/I] the mean that you’re interested in. The long-term mean of the signal is probably useful for only a few things like the skin-electrode half cell potential. Really what you’re interested in is the peak-to-peak amplitude of signals, whether they be slow or fast-changing. Even if you want to investigate the behaviour of a signal which changes very slowly, the useful information is contained in how it changes, not in what mean it is centred around.

In other words, in almost all cases it is safe and sensible to remove the mean of the signal. That will give values that look more like what you might expect.