CSV Data Export
Record Muse data to CSV files for offline analysis and research.
Enabling CSV Export
- Open Settings → Output
- Find the CSV Export section
- Click Choose Folder to select where files will be saved
- Toggle Enable CSV Recording
CSV export requires a Standard or Advanced subscription.
Your recording output directory is automatically saved and will be restored the next time you launch the app.
Output Files
When recording, Petal Metrics creates separate CSV files for each data type:
| File | Contents | Sample Rate |
|---|---|---|
{timestamp}_eeg.csv | EEG data (4 channels) | 256 Hz |
{timestamp}_acc.csv | Accelerometer (3 axes) | 52 Hz |
{timestamp}_gyro.csv | Gyroscope (3 axes) | 52 Hz |
{timestamp}_ppg.csv | PPG data (3 channels) | 64 Hz |
Files are named with the recording start time: 2026-01-27_15-30-45_eeg.csv
File Format
EEG CSV
timestamp,tp9,af7,af8,tp10
1706365845123,-12.5,8.3,-5.1,15.2
1706365845127,-11.8,9.1,-4.8,14.9
1706365845131,-13.2,7.6,-5.5,16.1
| Column | Unit | Description |
|---|---|---|
| timestamp | milliseconds | Unix timestamp |
| tp9 | µV | Left ear electrode |
| af7 | µV | Left forehead electrode |
| af8 | µV | Right forehead electrode |
| tp10 | µV | Right ear electrode |
Accelerometer CSV
timestamp,x,y,z
1706365845125,0.02,-0.98,0.15
1706365845144,0.03,-0.97,0.14
| Column | Unit | Description |
|---|---|---|
| timestamp | milliseconds | Unix timestamp |
| x | g | Left/right acceleration |
| y | g | Forward/back acceleration |
| z | g | Up/down acceleration |
Gyroscope CSV
timestamp,x,y,z
1706365845125,1.2,-0.5,0.8
1706365845144,1.1,-0.6,0.9
| Column | Unit | Description |
|---|---|---|
| timestamp | milliseconds | Unix timestamp |
| x | °/s | Pitch rotation |
| y | °/s | Roll rotation |
| z | °/s | Yaw rotation |
PPG CSV (Muse S only)
timestamp,ambient,ir,red
1706365845120,1250,3400,2800
1706365845136,1248,3395,2795
| Column | Description |
|---|---|
| timestamp | Unix timestamp (milliseconds) |
| ambient | Ambient light level |
| ir | Infrared reflection |
| red | Red light reflection |
Starting and Stopping Recording
Recording controls are located in the sidebar at the bottom of the screen, in the Recording section.
Start Recording
- Ensure CSV export is enabled in Output settings
- Connect to your Muse headband
- Start streaming by clicking the green Play button in the sidebar (under "Stream")
- Once streaming, click the red Record button in the sidebar (under "Recording")
- The button will pulse and show elapsed time while recording
Stop Recording
- Click the Stop button in the Recording section of the sidebar
- Files are automatically saved to your chosen folder
- The elapsed time resets
You can start and stop recording multiple times during a single streaming session. Each recording creates a new set of CSV files with unique timestamps.
Analyzing CSV Data
Python (Pandas)
import pandas as pd
# Load EEG data
eeg = pd.read_csv('2026-01-27_15-30-45_eeg.csv')
# Convert timestamp to datetime
eeg['datetime'] = pd.to_datetime(eeg['timestamp'], unit='ms')
# Calculate mean of each channel
print(eeg[['tp9', 'af7', 'af8', 'tp10']].mean())
# Plot the data
eeg.plot(x='datetime', y=['tp9', 'af7', 'af8', 'tp10'])
MATLAB
% Load EEG data
eeg = readtable('2026-01-27_15-30-45_eeg.csv');
% Convert timestamp to datetime
eeg.datetime = datetime(eeg.timestamp/1000, 'ConvertFrom', 'posixtime');
% Plot all channels
figure;
plot(eeg.datetime, [eeg.tp9, eeg.af7, eeg.af8, eeg.tp10]);
legend('TP9', 'AF7', 'AF8', 'TP10');
xlabel('Time');
ylabel('Amplitude (µV)');
Excel
- Open the CSV file in Excel
- Select the data range
- Insert → Chart → Line chart
- Format as needed
Storage Considerations
Approximate file sizes per hour of recording:
| Data Type | Size/Hour |
|---|---|
| EEG | ~35 MB |
| Accelerometer | ~7 MB |
| Gyroscope | ~7 MB |
| PPG | ~9 MB |
| Total | ~58 MB/hour |
Ensure you have sufficient disk space for long recordings.
Troubleshooting
"Permission denied" when saving
- Choose a folder where you have write permissions
- Avoid system folders (Program Files, Windows)
- Try your Documents folder
Files not appearing
- Check the folder you selected in Settings
- Look for files with today's date
- Verify recording was actually started (Record button shows Stop)
Incomplete files
- Recording may have been interrupted
- Check disk space wasn't exhausted
- Ensure the app wasn't force-closed during recording
Availability
CSV export is available on Standard and Advanced subscription plans.