Alif Ensemble E7

The Ensemble series of fusion processors from Alif Semiconductor utilize ARM's low power Cortex-M55 CPUs with dedicated Ethos-U55 microNPUs to run embedded ML workloads quickly and efficiently. The devices feature both 'High Power' cores designed for large model architectures, as well as 'High Efficiency' cores designed for low power continuous monitoring. The E7 Development kit and E7 AppKit are both fully supported by Edge Impulse. The Ensemble E7 kits feature multiple core types, dual MEMS microphones, accelerometers, and a MIPI camera interface.

To get started with the Alif Ensemble E7 and Edge Impulse you'll need the following hardware:

Alif Ensemble E7 Dev Kit

Installing dependencies

To set this device up in Edge Impulse, you will need to install the following software:

  1. The latest Alif Security Toolkit:

  • Navigate to the Alif Semiconductor Kit documentation page (you will need to register to create an account with Alif, or log in to your existing Alif account). and download the latest App Security Toolkit (tested with version 0.56.0) for windows or linux.

  • Extract the archive, and read through the included Security Toolkit Quick Start Guide to finalize the installation

  1. (Optional) Docker Desktop:

  • If you are using MacOS, we recommended installing Docker Desktop in order to use the Alif Security Toolkit for programming.

Connecting to Edge Impulse

Once you have installed it's time to connect the development board to Edge Impulse.

1. Configure your hardware

To interface the Alif Ensemble E7 AppKit or Development Kit, you'll need to make sure your hardware is properly configured and connected to your computer. Follow the steps below to prepare your specific kit for connection to Edge Impulse

Ensemble E7 AppKit
  1. Configure the AppKit's USB-to-UART jumper to UART2

  1. Connect the AppKit to your computer via the USB connector labelled PRG USB

Ensemble E7 Development Kit

Full setup instructions may be found in Alif's AQSG0001 DevKit Quick Start Guide. A summary of the hardware setup instructions is shown below.

1. Connect the Alif Ensemble E7 baseboard

Ensure the baseboard is connected with the Ensemble E7 compute module as shown in the picture below.

Alif Baseboard connected

2. Connect the FTDI USB-to-UART bridge included with the development kit

IMPORTANT - PLEASE DOUBLE CHECK OR BOARD MAY BE DAMAGED!

Ensure the voltage jumper on the FTDI USB-to-UART bridge is set to 1v8 as shown in the image below. If this is not done before connecting, the board will be damaged! Make sure the squid cable is attached so that the orange lead is connected to the VCC signal as shown in the picture.

Alif USB Bridge 1v8 jumper

With the voltage jumper set, pins GND, TXD, and RXD on the USB bridge should be connected as such. Please connect the USB bridge to your computer once the pins are connected.

  • Rx (Black) on pin 7

  • Tx (Blue) on pin 8

  • GND (Green on any circled pin)

Alif UART2 connected

3. Connect the MIPI camera

The Alif development kit includes a MIPI camera, which should be connected to J432 on the right side of the board, as shown below.

Note: If you have Revision B or earlier kits, board modifications are required to connect the camera interface. Alif provides a guide for configuring the baseboard for MIPI camera support via Baseboard Modifications for Camera Functionality. If you are using a revision C or later development kit, you do not need to make these modifications.

Alif Development Kit MIPI Connector

4. Connect the LCD screen

The Alif development kit includes an LCD for displaying camera data and inferencing results. It should be connected to J415 on the Alif development kit, as shown below.

Note: If you have Revision B or earlier kits, board modifications are required to connect the LCD interface. Alif provides a guide for configuring the baseboard for LCD support via Baseboard Modifications for Camera Functionality. If you are using a revision C or later development kit, you do not need to make these modifications.

Alif Development Kit LCD Connector

2. Flash the default firmware to the device

After configuring the hardware, the next step is to flash the default Edge Impulse Firmware. This will allow us to collect data directly from your Ensemble device. To update the firmware:

  1. Navigate to the directory where you installed the Alif Security Toolkit

  2. Copy the .bin files from the Edge Impulse firmware directory into the build/images directory of the Alif Security Toolkit

  3. Copy all .json files from the Edge Impulse firmware directory into the build/config directory of the Alif Security Toolkit

  4. From a command prompt or terminal, run the following commands:

./app-gen-toc -f build/config/ei-appkit-gcc.json
./app-write-mram

3. Run the Edge Impulse CLI!

Now, the Ensemble device can connect to the Edge Impulse CLI installed earlier. To test the CLI for the first time, either:

Create a new project from the Edge Impulse project dashboard

OR

Clone an existing Edge Impulse public project, like this Face Detection Demo. Click the link and then press Clone at the top right of the public project.

Then, from a command prompt or terminal on your computer, run:

edge-impulse-daemon

Device choice

If you have a choice of serial ports and are not sure which one to use, pick /dev/tty.FTDI_USBtoUART or /dev/cu.usbserial-*. You may see two FTDI serial ports enumerated for AppKit devices. If so, select the second entry in the list, which generally is the serial data connection to the Ensemble device.

If you see failures connecting to one serial port, make sure to test other serial connections just in case.

This will start a wizard which will ask you to log in and choose an Edge Impulse project. You should see your new or cloned project listed on the command line. Use the arrow keys and hit Enter to select your project.

5. Verifying that the device is connected

That's all! Your device is now connected to Edge Impulse. To verify this, go to

Device connected to Edge Impulse.

Next steps: building a machine learning model

With everything set up you can now build your first machine learning model with these tutorials. This will walk you through the process of collecting data and training a new ML model:

Alternatively, you can test on-device inference with a demo model included in the base firmware binary. To do this, you may run the following command from your terminal:

edge-impulse-run-impulse --debug

Then, once you've tested out training and deployment with the Edge Impulse Firmware, learn how to integrate impulses with your own custom Ensemble based application:

Last updated

Revision created

Merge branch 'main' into brickml