Multi-Muse, BlueMuse, any way to channel LSL to OSC?

I would like to stream data from multiple muses (model 2016, and model 2) to one Windows10 laptop. Muse Direct is still mixing up the data packets from multiple muses, and apparently also has stopped supporting any multi-muse usage.

I just downloaded BlueMuse and verified that I can connect multiple muses at the same time. I can start the LSL streaming, but don’t have any software yet to receive LSL. So I can’t tell if there’s any interference in the data.

My questions:

  • Is BlueMuse able to get good signal from multiple muses at the same time?

  • I would love to be able to get the LSL signals into Processing. Has anyone tried that before? I find the documentation a bit confusing, it took me quite a while to figure out its UDP.

  • Is there any LSL to OSC converstion software/library?

1 Like

hi eva

I’ve just started evaluating whether to use the Muse headsets for use on an art / research project (audience responses during classical music recitals) and will need to do a similar thing to you -

Good to know Muse Direct isn’t the right thing.

There is a python library for viewing and recording LSL streams and a lot of BCI resources around it on Github:

One way might be to add the python OSC library onto that - i’ll probably be having a go myself over the next few weeks.

There’s also MuseMonitor, which looks great and does exactly what you want and more, but would i think need a phone per headset if i’ve understood it correctly, which could get expensive.

[Personally i’m really torn about using Muse - i’d like to do the whole thing knowing the company was still wholly invested in supporting art and research, but the prospect of getting dozens of members of the public into say an openBCI Cylon headset with wires hanging off it just doesn’t seem workable…]

hope that’s some use -


The muse-lsl is an excellent project to help get started! I’ve used it and modified parts of it for other projects and it helped so much. And yes, as mentioned by @rychrd it would be easy to add an OSC module. Good luck!

1 Like

Hey @rychrd - Yes! Muse-lsl was gonna be my alternate route. Great to hear you’ll also be tinkering with it in the coming weeks. Let’s exchange on here! To what software do you plan to send your OSC data? And how many devices are you hoping to connect?

Hey @Debra - Very encouraging to hear that you had so much success with muse-lsl. How many muses did you run in parallel?

I’ve also contemplated the Muse-Monitor route, as I noticed some stability issues with Blue Muse. Occasional crashes, sometimes mid-stream, sometimes when i tried to add additional muses. I haven’t done any extensive testing yet, so these are just observations from a few hours. Everything seems to be very dependent on one’s bluetooth-chip+driver though. So I can’t tell if Blue Muse or the BT chip is at fault.

Since I only have 2 headbands that’s all I’ve been able to try so far. I’m glad the price of the Muse 2016 is coming down, I don’t need the Muse 2 extras. Depending on various factors I hope to buy a few more next year. To be clear I don’t use muse-lsl to connect to more than one Muse headband, I’m doing that in my own code. It’s not that difficult to accomplish. Also, I’m running only Linux or Macintosh, no Windows.

I am starting to be a bit skeptical about being able to run multiple muses at the same time. On github a bunch of people reported issues as well with muse-lsl, and that only with 2 devices.

Hey @Debra, with your code, are you accessing frequency bands, raw EEG data, or both? Because when i ran 2 muses with Muse Direct before, the noise was apparent when looking at the sudden jumps in the frequency bands, while noise in the EEG data is probably less visible.

hey eva

the plan is to send data to Notch ultimately to generate the graphics, but i’m not working on the video design directly so i’ll probably be use MaxMSP or openFrameworks to test things and maybe do filtering/averaging there as well…I’m only going to look at the FFT style bands, there will just be too much data otherwise i think

The plan is to get 12 headsets running at the same! how feasible that is remains to be seen - so far i’ve only got one to play with, and bluetooth always seems a bit of mission to get working, but that might be me -

good to know @Debra has two connecting at the same time at least

Hey @rychrd
Just wanted to let you know that I gave up on getting multiple headbands streaming from one device. I’ll do my setup now with Mind Monitor and one device per headband (6 headbands, with 2 laptops, 2 phones, 2 tablets to be exact).

Let me know if you have more luck!

hi @eva
thanks for leting me know - that sounds like a good fallback - is it tricky getting them all paired?

I’ve still only got hold of 1 muse2 so haven’t got too much further:

It turned out my PC didn’t have a built in bluetooth so i’m using a BLE112 module now - according to Silcon Labs you can alter the timing in the firmware so they’ll work with up to 6 devices…3 is the default

I couldn’t find way to make Bluemuse see the USB dongle so i’ve switched to Linux / Mac

MuseLSL works fine on Mac with the BLE112 (and the bgapi backend) and apart from a crazy big font size thing in the viewer Linux is OK too, so i’m planning to go that route if my Python is up to it. - museLSL gives you the raw values, so i’ll need to crib the maths from somewhere…

I’ll let you know - there’s quite a few tricky bits to get going yet and i might run out of time

hi @rychrd - no there’s no issue at all pairing the headbands to separate bluetooth receivers. Everything has been very stable (so far).

Very curious to hear if you’ll get that BLE112 module to work. 6 headbands over one device would be amazing. Good luck!

Hi all,
I’m in the same position, will have to use 20 headsets and preferably I would like to have their data streamed to one single computer.
I was investigating the route of Muse Headband --> Muse Monitor on the phone --> OSC to computer.
With every person running the app on his/her phone.
Do you think this could be feasible? Could there be troubles on receiving 20 OSC signals on the computer all at the same time?

Hey @Federico
I think that should be fine. Obviously I haven’t tested with 20 headbands, so take it with a grain of salt, but I’ve worked with OSC a bunch and don’t see any obvious issues. If you feel the network is getting clogged, you could test with the Mind Monitor settings: Not stream “All values” and/or use “Average values” from all sensors. That way you would reduce the size and number of OSC messages.

Hey @eva
do you have a short python example for receiving EEG data from muse direct via OSC?
In other posts of the forum it seems that people are struggling quite a bit trying to achieve that.
I would like to make some processing on the data so Muse Lab is not an option for me.

Thanks a lot

Hi @Antonello
I’ve been using processing to parse and use the incoming OSC data from muse-direct.
You can find an example here

I guess the question is really if 20 BLE devices with a very high data streaming frequency show no signs of slowing down or packet loss. To my experience, having tested similar devices in areas with 20-30 Bluetooth-capable devices around, those kind of effects may occur. Also I am looking at a publication, where they have been running five Muse headbands at the same time, facing issues. Excerpt: “The estimates were based on 8 min of recording or more. However, the data came in bursts and at a slightly variable sampling rate, due to the limitations of Bluetooth technology. Bursts of data with the same time stamps consisted of 33 data points, on average. We assumed that accurate timestamps corresponded to endpoints of the bursts, so for the data acquired between two consecutive bursts, we interpolated intermediate timestamps as if acquired with even sampling. Because our conditions were at least 20 s long, this was acceptable accuracy in determining the condition onsets and offsets.”