Skip to content

Commit 7b7c532

Browse files
committed
CSV testing
1 parent 5895ff5 commit 7b7c532

File tree

3 files changed

+40
-2
lines changed

3 files changed

+40
-2
lines changed

package-lock.json

Lines changed: 5 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@
1515
"muse-js": "^3.1.0",
1616
"net": "^1.0.2",
1717
"next": "9.5.2",
18+
"papaparse": "^5.3.0",
1819
"react": "16.13.1",
1920
"react-dom": "16.13.1",
2021
"socket.io": "^2.3.0",

pages/visualizations.js

Lines changed: 34 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ import Link from 'next/link'
44
import Layout from '../components/layout'
55
import { channelNames, EEGReading, MuseClient } from 'muse-js';
66
import io from 'socket.io-client';
7+
import * as Papa from 'papaparse';
78

89
const socket = io('http://localhost:5000');
910
const museClient = new MuseClient();
@@ -12,6 +13,8 @@ function Visualizations() {
1213
const [testEEGData, setTestEEGData] = useState("");
1314
const [blink_state, setBlinkState] = useState("");
1415

16+
var fileList
17+
1518
async function startMuseConnection(e) {
1619
await museClient.connect()
1720
await museClient.start()
@@ -27,7 +30,21 @@ function Visualizations() {
2730
});
2831
}
2932

30-
33+
async function streamCSVData(e) {
34+
Papa.parse(fileList[0], {
35+
complete: function(results) {
36+
var rows = results.data
37+
var i = 0
38+
var interval = setInterval(function() {
39+
socket.emit('eeg-stream', rows[i]);
40+
i++;
41+
if(i >= rows.length) {
42+
clearInterval(interval)
43+
}
44+
}, 3.90625)
45+
}
46+
});
47+
}
3148

3249
useEffect(() => {
3350
socket.on('connect', (msg) => {
@@ -40,6 +57,13 @@ function Visualizations() {
4057
console.log("Blink State: " + msg)
4158
setBlinkState(msg)
4259
});
60+
61+
const fileSelector = document.getElementById('file-selector');
62+
63+
fileSelector.addEventListener('change', (event) => {
64+
fileList = event.target.files;
65+
console.log(fileList);
66+
});
4367
}, []);
4468

4569

@@ -62,6 +86,14 @@ function Visualizations() {
6286
<br></br>
6387
<br></br>
6488

89+
<input type="file" id="file-selector"></input>
90+
<button onClick={streamCSVData}>
91+
TEST!
92+
</button>
93+
94+
<br></br>
95+
<br></br>
96+
6597
<form onSubmit={sendTestEEGData}>
6698
<label>
6799
Send Test Message to Flask: <tab></tab>
@@ -74,4 +106,4 @@ function Visualizations() {
74106
);
75107
}
76108

77-
export default Visualizations;
109+
export default Visualizations;

0 commit comments

Comments
 (0)