Flashing impulse project to we_plus board

Hello,
I had created impulse project with image sensor and try to run
edge-impulse-run-impulse
then i will get below output
image

when run edge-impulse-daemon then below output

why I am getting accelerometer data…

Hello @prashant.s,

It seems that you have not flashed the right firmware…
Which board are you using?
Did you make sure to flash the generated firmware (the one downloaded for your project’s under the deployment page)?

Regards,

Louis

using himax_we_plus hardware
selected computer option


build success

Log:
Creating job… OK (ID: 2196828)

Writing templates…
Scheduling job in cluster…
Job started
Compiling EON model…
Compiling EON model OK

Removing clutter…
Removing clutter OK

Copying output…
Copying output OK

Job started
Building firmware…
Not searching for unused variables given on the command line.
– Configuring done
– Generating done
– Build files have been written to: /app/firmware-mw/build-mw
Scanning dependencies of target firmware-mw.elf
[ 1%] Building CXX object CMakeFiles/firmware-mw.elf.dir/ei_run_impulse.cpp.obj
[ 1%] Building CXX object CMakeFiles/firmware-mw.elf.dir/tflite-model/trained_model_compiled.cpp.obj
[ 2%] Building CXX object CMakeFiles/firmware-mw.elf.dir/edge-impulse-sdk/dsp/dct/fast-dct-fft.cpp.obj
/app/firmware-mw/ei_run_impulse.cpp:395:106: warning: format specifies type ‘unsigned long’ but the argument has type ‘size_t’ (aka ‘unsigned int’) [-Wformat]
ei_printf(“ERR: Cannot allocate base64 buffer of size %lu, out of memory\n”, base64_output_size);
~~~ ^~~~~~~~~~~~~~~~~~
%zu
/app/firmware-mw/ei_run_impulse.cpp:422:94: warning: format specifies type ‘unsigned long’ but the argument has type ‘size_t’ (aka ‘unsigned int’) [-Wformat]
ei_printf(“ERR: Cannot allocate base64 buffer of size %lu, out of memory\n”, new_base64_buffer_output_size);
~~~ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
%zu
2 warnings generated.
[ 3%] Linking CXX executable firmware-mw.elf
[100%] Built target firmware-mw.elf
Metaware Image Gen Tool
Image Gen Tool Ver: 2 . 1 . 10
Flash max size : 0x200000
BuildXMLHeader
ParseBinFile
ParseBinFile
ParseAppFile
elf2bin: ELF file firmware-mw.elf to binary sn1.bin; extracting section 1
elf2bin: section 1 extracted; address range: 0x10000000 to 0x10000144
elf2bin: ELF file firmware-mw.elf to binary sn2.bin; extracting section 2
elf2bin: section 2 extracted; address range: 0x10000400 to 0x100006b8
elf2bin: ELF file firmware-mw.elf to binary sn3.bin; extracting section 3
elf2bin: section 3 extracted; address range: 0x100006b8 to 0x1003f25c
elf2bin: ELF file firmware-mw.elf to binary sn4.bin; extracting section 4
elf2bin: section 4 extracted; address range: 0x20000000 to 0x20020800
elf2bin: ELF file firmware-mw.elf to binary sn5.bin; extracting section 5
elf2bin: section 5 extracted; address range: 0x20020800 to 0x20022b74
elf2bin: ELF file firmware-mw.elf to binary sn6.bin; extracting section 6
elf2bin: section 6 extracted; address range: 0x20022b80 to 0x20074390
elf2bin: ELF file firmware-mw.elf to binary sn7.bin; extracting section 7
elf2bin: section 7 extracted; address range: 0x20074400 to 0x20103900
elf2bin: ELF file firmware-mw.elf to binary sn8.bin; extracting section 8
elf2bin: section 8 extracted; address range: 0x20103900 to 0xffffffff
elf2bin: ELF file firmware-mw.elf to binary sn9.bin; extracting section 9
elf2bin: section 9 extracted; address range: 0x80000000 to 0x800091e0
elf2bin: ELF file firmware-mw.elf to binary sn10.bin; extracting section 10
elf2bin: section 10 extracted; address range: 0x800091e0 to 0xffffffff
elf2bin: ELF file firmware-mw.elf to binary sn11.bin; extracting section 11
elf2bin: section 11 extracted; address range: 0x90000000 to 0x90008000
elf2bin: ELF file firmware-mw.elf to binary sn12.bin; extracting section 12
elf2bin: section 12 extracted; address range: 0xa0000000 to 0xa0008000
RunBLp…
RunBLp…
RunBLp…
RunBLp…
RunBLp…
RunBLp…
RunBLp…
RunBLp…
RunBLp…
RunBLp…
RunBLp…
RunBLp…
RunBLp…
RunBLp…
RunBLp…
GenLayoutFile
RunBLp…
ParseBinFile
RunBLp…
ReorderXML
GenWholeImage
Total image size= 983 KB( 0xf5e20 )
Gen out.img ,image size= 983 KB
Sum of slice image size= 983 KB( 0xf5e20 )
Generate Image Done
Building firmware OK

Copying artefacts…
Copying artefacts OK

Job completed

Flashed using flash tool.

Hi,

If you are using the Himax microcontroller, you can not use the precompiled firmware for the Computer deploy option, you need to integrate the C++ library into the firmware repo for the Himax board as we have discussed in another one of your forum posts. You can read more on how to integrate the deployed Edge Impulse C++ SDK into your Himax firmware by following all instructions here: https://docs.edgeimpulse.com/docs/running-your-impulse-himax

Thanks!

The edge-impulse-daemon is for collecting data from the Himax board via the Data Acquistion tab in your Edge Impulse project. If you want to collect other types of sensor data than ones we do not officially support in the Edge Impulse Firmware for the Himax board (https://docs.edgeimpulse.com/docs/himax-we-i-plus) you will need to write custom code to send the sensor data over serial connection with the edge-impulse-data-forwarder. Please read more about this here: https://docs.edgeimpulse.com/docs/cli-data-forwarder

If you have only uploaded images to your Edge Impulse project (and no other type of sensor data), you should see the Himax deployment option on the Deployment page.

As i already informed you its deployed and built…

In case of himax board, creating impulse project using edge impulse studio will not work. For computer deploy option using edge impulse studio, there will be pre compiled firmware added with the project. And this pre compiled firmware cannot be used in our case.

Am i correct…?

No, you can deploy a project from the Edge Impulse Studio with a pre-compiled binary for the Himax board if your project only contains data from officially supported sensors, like the camera, accelerometer, etc. You will see this pre-compiled binary option for the Himax board on the deployment tab if your project contains the proper image data:

For example: https://studio.edgeimpulse.com/public/14227/latest/deployment

If you want to compile your own firmware for the Himax board you will need to export a C++ library from the Deployment tab and integrate it into the Himax firmware Github repo as I described above: https://github.com/edgeimpulse/firmware-himax-we-i-plus