2025-04-09 12:11 AM - edited 2025-04-09 12:12 AM
Hi everyone,
I'm currently working with NanoEdgeAI Studio and I'm trying to analyze a signal from mutliple CSV files with each containing more than 450,000 rows of data. However, when I try to compute the FFT, the software displays the following message:
"Signal has not enough values per axis to compute FFT."
This confuses me because 450k+ values should definitely be enough for an FFT computation?
Right now, my CSV contains only a single column with the signal values (no timestamps, no headers, just raw values). Here's what I'm wondering:
Does NanoEdgeAI Studio require a timestamp column or a specific format for the signal to be considered valid for FFT?
Are there any hidden minimum data requirements per axis, or is it related to how the file is structured?
Could the issue be that the tool expects multiple channels or axis-labeled data (like X, Y, Z) instead of just a single stream?
Any help or tips would be appreciated — I just want to get the FFT visualization working.
Thanks in advance!
Solved! Go to Solution.
2025-04-10 8:47 AM - edited 2025-04-10 8:50 AM
Hello @MERSI,
NanoEdge expect dataset containing buffers of data, not single values:
Please read this: https://wiki.st.com/stm32mcu/wiki/AI:NanoEdge_AI_Studio#Data_format
And for the format specifically: https://wiki.st.com/stm32mcu/wiki/AI:NanoEdge_AI_Studio#Basic_format
Right now NanoEdge see your dataset as buffers of size 1 and cannot compute a FFT for that.
You need to cut your dataset into buffers, reshape your csv and import it again.
Be careful of the buffer size and frequency you use. If you want to classify a motor behavior with a buffer representing a microsecond of its behavior (small buffer size and high datarate), it will most likely not work.
You can look for a good place to start, with your current file, using the sampling finder tool inside NanoEdge.
https://wiki.st.com/stm32mcu/wiki/AI:NanoEdge_AI_Studio#Sampling_finder
Have a good day,
Julian
2025-04-10 8:47 AM - edited 2025-04-10 8:50 AM
Hello @MERSI,
NanoEdge expect dataset containing buffers of data, not single values:
Please read this: https://wiki.st.com/stm32mcu/wiki/AI:NanoEdge_AI_Studio#Data_format
And for the format specifically: https://wiki.st.com/stm32mcu/wiki/AI:NanoEdge_AI_Studio#Basic_format
Right now NanoEdge see your dataset as buffers of size 1 and cannot compute a FFT for that.
You need to cut your dataset into buffers, reshape your csv and import it again.
Be careful of the buffer size and frequency you use. If you want to classify a motor behavior with a buffer representing a microsecond of its behavior (small buffer size and high datarate), it will most likely not work.
You can look for a good place to start, with your current file, using the sampling finder tool inside NanoEdge.
https://wiki.st.com/stm32mcu/wiki/AI:NanoEdge_AI_Studio#Sampling_finder
Have a good day,
Julian