Multi-Tenant Possibility?

I may have missed it in the documentation. Can I create a multi-tenant application with Edge Impulse? I will be using an Arduino Nano 33 BLE Sense board. Thanks.

Hi @jdwbmc what do you mean with multi tenancy here?

I want to use 2 sensors, each with their own NN connected together in a cascading architecture. If the first sensor’s inference comes back true, it fires the second sensor’s inference. If that comes back true, some action is taken. If either sensor’s inference comes back false, no action is taken. Does this help?

Ah, so yes, but it does require some engineering. If you look at the output of the Arduino or C++ library export the model is in the model-parameters and tflite-model folders, but these have fixed names / prefixes so if you add two models they are in conflict. You can get this to work by prefixing all declarations and variables in these with a prefix per model, but that does require some work unfortunately. We don’t have an easy way of supporting this out of the box at the moment

Hi @janjongboom,

I’ve been looking into this and I had a few questions:

  1. Are the only files that need to be changed in the model-parameters and tflite-model folders? Or are there be files that have to be changed in the edge-impulse-sdk folder?
  2. Any declarations/variables/defines to look out for that might easily be forgotten while editing the names?
  3. Is it easier to combine two models that use the same sensor versus two models that use different sensors?
  4. Do you know of any projects that have succeeded running two models at the same time?


Hi @s-agar, in edge-impulse-sdk you’ll need to be on the lookout for macros that start with EI_CLASSIFIER_.

On 3) no, once this is resolved it shouldn’t matter which sensors you use.

On 4), not two fully separate models. Both anomaly detection + NN for example we see.

We have a backlog item to make this easier, but it’ll be a while until we have time to actually make this easier :slight_smile: