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 is fully supported by Edge Impulse, and features 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:
(Optional) A compatible MIPI Camera
A JTAG compatible debugger such as an ARM U-LINK pro, or J-LINK Pro with a 19-pin 0.05" adapter
The Edge Impulse firmware for this development board is open source and hosted on GitHub: edgeimpulse/firmware-alif-e7
To set this device up in Edge Impulse, you will need to install the following software:
A compatible flash programmer for your JTAG debugger of choice
For J-LINK Pro, we recommend OZONE
For ARM U-LINK pro, we recommend ARM Development Studio or Keil MDK5
With all the software in place it's time to connect the development board to Edge Impulse.
Pins GND, TXD, and RXD on the USB bridge should be connected to header pins 19, 7 and 6 on the baseboard, respectively. Then plug the USB bridge into your computer.
Connect to the 20-pin JTAG header on the baseboard, then connect the debugger USB to your computer.
Alif provides a guide for configuring the baseboard for MIPI camera support via Baseboard Modifications for Camera Functionality. Follow this document to connect the camera.
The development board does not come with the right firmware yet. To update the firmware:
Download the latest Edge Impulse firmware and unzip the file.
Connect your flash programmer to your debugger of choice, and configure it to select
For ARM Development Studio or Keil MDK5, see Alif instructions in AUGD0002.
Select the app.axf
from the zip folder as the binary/ELF file to flash and run the Edge Impulse firmware on the device
Alternatively, Alif provides a Secure Enclave
to manage secure firmware storage and bootup in production environments. Alif provides documentation on converting .axf files for use with their secure enclave, and then programming the resulting binary regions to the secure enclave in AUGD0002.
From a command prompt or terminal, run:
Mac: 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-*
This will start a wizard which will ask you to log in and choose an Edge Impulse project. If you want to switch projects run the command with --clean
.
Alternatively, recent versions of Google Chrome and Microsoft Edge can collect data directly from your development board, without the need for the Edge Impulse CLI. See this blog post for more information.
That's all! Your device is now connected to Edge Impulse. To verify this, go to your Edge Impulse project, and click Devices. The device will be listed here.
With everything set up you can now build your first machine learning model with these tutorials:
Then once you've tested out deployment with the prebuilt Edge Impulse firmware, learn how to integrate Edge Impulse with your own custom Ensemble based application:
For OZONE, create a new project with the following device settings: