Beginner questions! Connection of a Geophone to collect data

Hi There!
I’m looking to train a model based on a geophone seismic sensor.
It’s a similar model to an accelerometer but it’s analog.
So i can connect it to the Nano but how should i do it?

How do I sample that data to create a detection model for certain vibrations?

I have data that looks like that from Raspberry Pi that was recorded as raw data.
0.0772400498390198 -0.0334217622876167 0.0159807838499546 0.0177145823836327 0.0773506164550781 -0.0327318646013737 0.0163810141384602 0.0180633589625359 0.0770958736538887 -0.0316078439354897 0.0168671533465385 0.018361896276474 0.0767902359366417 -0.029647970572114 0.0177943296730518 0.0189994983375072 0.0763635784387589 -0.0288539547473192 0.0179303847253323 0.0190845690667629 0.0770840123295784 -0.0290875006467104 0.0170500855892897 0.0185087844729424 0.0778733566403389 -0.0295919422060251 0.0161766037344933 0.0183468628674746

How can I load it into the ML? or it can work only directly from the edge unit?

Also on one hand it’s like an accelerometer but I want to extract 1D FFT data from it like Audio data.
How can i convert the time series data to a frequency series using an FFT, then build a training model with the small FFT segments as 1D inputs.

Thank you!

Hi @doribak,

That’s a very interesting project!
Best way to create your dataset is to forward your data from the serial port, check our data forwarder: https://docs.edgeimpulse.com/docs/cli-data-forwarder.

If you already have collected your data samples, just convert them to our data acquisition format (json) and use the uploader: https://docs.edgeimpulse.com/docs/cli-uploader.

You can then add a Spectral Features block to your Impulse to extract spectral power using an FFT:

Aurelien

I didn’t understand how can i convert the data I showed in my post which is in TXT files I assume it’s raw data from the geophone to JSON.

If you can help that would be great!

I will also buy a data forwarder to add more signal.

You can check the example code here: Upload dataset in CSV file to Edge Impulse

This is converting a csv to json so very similar to your file. Just change the delimiter to delimiter=' '. You can then import the json using the Edge Impulse uploader.

Aurelien

the JSON converted is just
[
{
“signal”: 0.07724005,
“steps”: “steps”
},
{
“signal”: -0.033421762,
“steps”: “steps”
},
{
“signal”: 0.015980784,
“steps”: “steps”
},

I’m sure I don’t know what I’m doing but I either get.
Can you tell me what is the header I need to add to make it work?

[1/1] Failed to upload csvjson.json Missing protected header
OR
[1/1] Failed to upload csvjson.json Invalid message body, was specified to be JSON but could not decode message (Unexpected token # in JSON at position 0)

@doribak we need a bit more data, like the frequency of your data. The JSON format we expect is here: https://docs.edgeimpulse.com/reference#data-acquisition-format