How would I go about sending MIPI data via Bluetooth to a computer?

I have a project whose end-goal is to send images via Bluetooth to any device that will accept it. I have been given the specified Bluetooth IC to work with, and have picked out an image sensor because of it's physical size (datasheets linked below).

BT Module Datasheet MDBT40

BT IC datasheet nRF51822

Image Sensor Datasheet MT9M114EBLSTCZ-CR

Ideally there is some sort of existing library for the BT IC I'm using that can just take a MIPI input and send it without me having to worry about making it. I don't have any idea of how I would go about finding something like this though, and it's very likely that my approach is completely incorrect. I wasn't able to find any sort of MIPI converter on any sites like Digikey though, which makes me believe that everything is just done directly in software.

If anyone has experience with MIPI or any image sensing stuff at all, input would be appreciated. It's not to late for me to completely restart my project if what I'm doing makes no sense.

I'm currently in the hardware design phase so I haven't actually written any code. I just want to make sure that what I want to do is possible before I design an entire PCB.

Parents
  • Hi

    Are you planning on sending the MIPI data over Bluetooth Low Energy (the nRF5x series doesn't support Bluetooth Classic) as just images/files or to "stream" footage in real-time? BLE is not very well suited for throughputs as high as what's needed to stream a steady video stream unfortunately, and the nRF51822 is even less suitable, as it is a rather old IC by now, and doesn't support any of the BLE features that increased throughput by quite a bit in BLE 5.0.

    Either way I'd recommend moving to at least the nRF52 series that we have updated SDKs for and sample projects. We even have this BLE image transfer demo for the nRF52840 DK that uses a camera sensor to capture a JPG image and send it oer BLE to a phone app. A throughput of ~1300kbps has been tested and confirmed here. 

    You're right that the MIPI will need to be handled in software, but we don't have a library/driver that handles MIPI data I'm afraid. Perhaps a third party does though.

    Best regards,

    Simon

  • Thanks for the quick reply.

    I wasn't aware that the nRF5x series only did BLE. I would much rather convert the MIPI data to some sort of image file and then send it over Bluetooth, but I don't know how to do that so I'm also open to just sending the raw MIPI data where it might be easier to find a library/driver to handle it somehow on the computer. 

    The good news is that I don't care a ton about throughput- I just want an image to be sent once every few seconds, which I think even old BLE should be able to handle?

    I might check out the devboard you sent as well as it seems like a really easy solution to my problem, but ideally I could just stick with the existing IC and refactor the code because I have a bunch leftover from previous projects. 

Reply
  • Thanks for the quick reply.

    I wasn't aware that the nRF5x series only did BLE. I would much rather convert the MIPI data to some sort of image file and then send it over Bluetooth, but I don't know how to do that so I'm also open to just sending the raw MIPI data where it might be easier to find a library/driver to handle it somehow on the computer. 

    The good news is that I don't care a ton about throughput- I just want an image to be sent once every few seconds, which I think even old BLE should be able to handle?

    I might check out the devboard you sent as well as it seems like a really easy solution to my problem, but ideally I could just stick with the existing IC and refactor the code because I have a bunch leftover from previous projects. 

Children
No Data
Related