luxonis / depthai-spi-api

MIT License
4 stars 1 forks source link

Method to flush the SPI requests on MOSI line #6

Closed nicolethai closed 2 years ago

nicolethai commented 2 years ago

Hi, these are questions for sending input data to the pipeline over SPI.

I was wondering which method to call if I wanted to clear a SPI command that was successfully processed on the DepthAI SoM end, but user never follows up and wants to restart the transaction. There are cases where I request a SEND_DATA and that command is ACK'd, but I am unable to follow through with sending the chunks of data input on SPI MOSI. The only way to I've been able to start over and resend that SEND_DATA request was to toggle power to the SoM. I notice there are the spi_pop_messages() and spi_pop_message() functions in the API -- is this only for flushing the response line on SPI MISO to the host?

Please let me know if you need more information!

Thanks

themarpe commented 2 years ago

@nicolethai I'll check but AFAIK there is currently no clean mechanism of aborting this kind of action (same goes for a readout of data). We'll have to add this functionality in.

EDIT: No, no means of "short circuiting" the transfer currently. You'll have to send the specified amount of data - but could be dummy/empty/invalid data. (although that might still continue to create a message in case where metadata isn't required. In case of messages with metadata the parsing will fail and no message will be sent forward)