AndrewKeene Hi Andrew,
Great question.
So the main difference (and we should phrase this better on the site, and also cross-link the products) is the boot method:
- BW1099: USB boot. So it is intended for working with a host processor running Linux, Mac, or Windows and this host processor boots the BW1099 over USB
- BW1099EMB: USB boot or NOR-flash boot. This module can work with a host computer just like the BW1099, but also has a 128MB NOR flash built-in and boot switches onboard - so that it can be programmed to boot off of NOR flash instead of of USB. So this allows use of the DepthAI in pure-embedded applications where there is no operating system involved at all. So this module could be paired with an ATTiny8 for example, communicating over SPI, or an ESP32 like on the BW1092 (which comes with the BW1099EMB pre-installed).
So it depends on the product you are building:
- If you already have a processor in your system that is running Linux (any flavor), Mac, or Windows, the BW1099 is fine. Simply connect USB and follow our Github/USB API for functionality.
- If you are building a system which has does not have a Linux, Mac, or Windows OS, then the BW1099EMB is what should be used - as it has NOR flash boot and can communicate over SPI to microcontrollers.
Feel free to shoot me an email at brandon at luxonis dot com as well and/or hop on slack to discuss more real-time as well.
So the embedded (SPI) code base is least mature as of this writing (with initial instructions here), but we are planning on rapidly expanding the capabilities there - as we view it as a core long-term use-case of the product.
Thoughts?
Thanks,
Brandon