Petal Docs
  • Introduction
  • Connect to muse (Free)
    • Connect muse & Stream Raw Data
      • Connect muse to Mac
      • Connect muse to Windows
  • Receive Data Streams (Free)
    • Receive an LSL Stream
      • Python Examples
      • Node Examples
    • Receive an OSC Stream
      • Python Examples
      • Node Examples
    • Receive Webhooks
      • Python Examples
      • Node Examples
  • Log Data (Free)
    • Logging Data
  • Metrics API (Maker Plan)
    • API Integration
    • Make Metrics API calls
      • Python Examples
      • Node.js Examples
  • Receive Data Streams (Maker Plan)
    • Receive an LSL Stream
      • Python Examples
      • Node Examples
    • Receive an OSC Stream
      • Python Examples
      • Node Examples
    • Receive Webhooks
      • Python Examples
      • Node Examples
  • Glossary of Terms
    • Glossary of Terms
  • 🧪Markers
    • 🧪Markers User Guide
Powered by GitBook
On this page
  • Receiving an LSL Stream
  • Raw Data Stream Names & Format

Was this helpful?

  1. Receive Data Streams (Free)

Receive an LSL Stream

PreviousConnect muse to WindowsNextPython Examples

Last updated 2 years ago

Was this helpful?

Receiving an LSL Stream

To receive the EEG data from a real or simulated stream over LSL, you can use some of the example scripts in the .

Time-corrected timestamps are streamed as the timestamp associated with each sample sent over LSL.

Raw Data Stream Names & Format

  • EEG: PetalStream_eeg

    • [channel1 (microvolts µV), channel2 (µV), channel3 (µV), channel4 (µV), channel5 (µV)]

  • Acceleration: PetalStream_acceleration

    • [x, y, z]

  • Gyroscope: PetalStream_gyroscope

    • [x, y, z]

  • Telemetry: PetalStream_telemetry

    • [battery-level (0-100), fuelGaugeVoltage (Volts), temperature (Celcius)]

  • PPG (Muse 2 and S only): PetalStream_ppg

    • [ambient, ir, red]

  • Connection status: PetalStream_connection_status

    • [1/0]

Each channel corresponds to the sensors on muse devices:

Ch. 1: 'TP9'

Ch. 2: 'AF7'

Ch. 3: 'AF8'

Ch. 4: 'TP10'

*Ch. 5: 'aux' (Optional and not available on all device versions)

Example snippet to open an inlet to receive EEG data:

streams = pylsl.resolve_stream('name', 'PetalStream_eeg')
inlet = pylsl.StreamInlet(streams[0])
while True:
    sample, timestamp = inlet.pull_sample()
    print(timestamp, sample)
getting started repo