MindRove / MindRoveSDK

Apache License 2.0
5 stars 4 forks source link

Clarification and Usage of `get_board_data()` Function in Python #2

Closed mikigom closed 1 year ago

mikigom commented 1 year ago

Hi, I'm currently working on a research project using your 8-channel armband. I recently sought clarification via email about an issue I encountered with data acquisition in my Python script, specifically with the get_current_board_data() function.

In my implementation, I used the get_current_board_data() function to acquire a live data stream from the device. However, I noticed that once the value in each data channel reached a certain number (i.e., self.num_points), the function seemed to be returning cumulative data up to that number rather than the newly acquired data I was interested in. Furthermore, the number of values accumulated in repeated calls of get_current_board_data() appeared inconsistent, which made it difficult to discern what data had been 'added' in each new call.

In response to my query, it was suggested that I should use the get_board_data() function instead. I understand that the key difference is that get_board_data() removes the data from the internal ring buffer, thereby returning only the new data compared to the last call each time it is called.

However, I noticed that get_board_data() is not included in the Python API example. As such, I am looking for guidance on how to use this function effectively in my script. I am hopeful that your team could provide more details or examples of its use.

Thank you for your time and assistance in this matter.

mikigom commented 1 year ago

Okay, I checked the documentation before right now and I confirm that just changing get_current_board_data(self.num_points) into get_board_data() works well. Thank you.