Skip to content

Commit 445c1a2

Browse files
authored
Merge pull request #57 from Amanmahe/filters
Enhance Device Connection and Signal Filtering
2 parents ba8f0cb + 4e1b362 commit 445c1a2

File tree

6 files changed

+573
-146
lines changed

6 files changed

+573
-146
lines changed

README.md

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -40,10 +40,26 @@ Chords is an application based on Web Serial connection, you can connect boards
4040

4141
- [Vendors](src/components/vendors.ts) list for board name and there vendor id are taken from [Stackblitz](https://stackblitz.com/edit/typescript-web-serial?file=vendors.ts) created by [William Grasel](https://github.com/willgm)
4242

43+
## Roadmap for upcoming update
44+
45+
**Data Filtering** : We will be adding bio-potential signal filtering options which includes 50/60 Hz notch filter to remove AC interference noise and highpass/lowpass remove artefacts from ECG, Emg ,Eog and EEg. Under filters, we will be adding different highpass and lowpass filters for specific bio-potential signals this feature will further enhance the user experience to record even more clear biopotential signals.
46+
47+
48+
**Snapshot of data** : We will add the option to show up to 10 snapshots of length 4 seconds each providing you the option to take a peek into past 40 seconds of your data.
49+
50+
**Multiple file download support** : We’re excited to enhance your options for downloading recorded data! Currently, you can record a file and choose to save or delete it. Soon, you’ll be able to download multiple files at once and have the flexibility to download or delete individual recorded files as needed.
51+
52+
**Raspberry Pi Pico support** : We will be releasing Raspberry Pi Pico support for chords which by the way works very well with our new Heart BioAmp Candy. Let us know your favorite board in the comments section below and we will make sure to add chords support for your board in the upcoming updates.
53+
54+
55+
**CSV compatibility with [Chords Python](https://github.com/upsidedownlabs/Chords-Python)** : we will update the CSV data format and file names for both chords-web and chords-python so that you can use csvplotter.py to easily plot the recorded data.
56+
57+
4358
## Contributors
4459

4560
Thank you for contributing to our project! Your support is invaluable in creating & enhancing Chords-Web and making it even better. 😊
4661

62+
4763
<center>
4864
<a href="https://github.com/upsidedownlabs/Chords-Web/graphs/contributors">
4965
<img src="https://contrib.rocks/image?repo=upsidedownlabs/Chords-Web" />

package-lock.json

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

package.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
"start": "next start",
99
"lint": "next lint",
1010
"export": "next export",
11-
"distDir":"out"
11+
"distDir": "out"
1212
},
1313
"dependencies": {
1414
"@radix-ui/react-accordion": "^1.2.0",
@@ -38,7 +38,7 @@
3838
"framer-motion": "^11.5.4",
3939
"html2canvas": "^1.4.1",
4040
"jszip": "^3.10.1",
41-
"lucide-react": "^0.383.0",
41+
"lucide-react": "^0.460.0",
4242
"next": "14.2.10",
4343
"next-themes": "^0.3.0",
4444
"react": "^18",

src/components/Canvas.tsx

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -238,14 +238,11 @@ const Canvas = forwardRef(
238238
});
239239

240240
linesRef.current.forEach((line, i) => {
241-
const bitsPoints = Math.pow(2, getValue(selectedBits)); // Adjust according to your ADC resolution
242-
const yScale = 2 / bitsPoints;
243-
const chData = (data[i] - bitsPoints / 2) * yScale;
244241

245242
// Use a separate sweep position for each line
246243
currentSweepPos.current[i] = sweepPositions.current[i];
247244
// Plot the new data at the current sweep position
248-
line.setY(currentSweepPos.current[i] % line.numPoints, chData);
245+
line.setY(currentSweepPos.current[i] % line.numPoints, data[i]);
249246

250247
// Clear the next point to create a gap (optional, for visual effect)
251248
const clearPosition = (currentSweepPos.current[i] + (numX / 100)) % line.numPoints;

0 commit comments

Comments
 (0)