Edge Impulse Uploader¶
Captures and uploades data to the Edge Impulse Injest service
Edge Impulse is the leading development platform for machine learning on edge devices. Their portal allows you to train machine learning models and deploy those models on stand alone embedded devices.
The Virtual Breadboard EdgeImpulse icon can be used to aquire data from virtual or real data sources ( via EDGEY interface) and upload to a specific EdgeImpulse project via their Injest Service.
On the Record pin a rising-edge high data capture starts. Every rising-edge on the Sample pin records a sample from all Axis pins is recorded with the
Interval timestep. If Sample pins is not wired then every simulated
Interval milliseconds a sample is recorded from all Axis pins. On the falling-edge of the Record pin the recorded data will be submitted using the
API KEY to either the training, testing or anomoloy service specified by the
Injest property. The data is submitted using the active Data Label pin.
|Record||-||rising-edge starts recording. falling-edge submits data|
|Sample||-||A comma seperated list of Axis|
|Axis||-||Axis pins are dynamically created to collect sample data|
|Data Labels||-||Data label pins are dynamically created to markup submitted sample data sets|
|Data Labels||-||A comma seperated list of Labels|
|Axis||-||A comma seperated list of Axis|
|Units||-||A comma seperated list of Units|
|Interval(ms)||100||An integer number milliseconds between axis samples|
|API KEY||-||The API Key of the Edge Impulse project to submit data to|
|HMAC KEY||-||The HMAC Key of the Edge Impulse project to submit data to|
|Submissions||1||The number of times a data set is submitted|
|Ingest||training||The ingest service training | training | testing | anomoly|
A data label marks a collection of data as representing a certain type of event or feature. Each data set has a label when submitted. When attaching labels a pin for each label is dynamically generated. To submit data for a specific label the pin should be active
HIGH during the sampling period.
Example: Data Labels : VERTICAL,HORIZONTAL,CIRCLE
An axis is a data source which is a sampled as a voltage nominally between 0 and 1. When attaching axis’ a pin for each Axis is dynamically generated. The pin should be wired to a VBB data source. When a sample is taken data is captured from the VBB data source.
Example: Axis : X,Y
A unit marks up an axis with a specific unit describing what the data represents
|m/s||meter per second(velocity)|
|m/s2||meter per square second(acceleration)|
|m3/s||cubic meter per second(flow rate)|
|l/s||liter per second(flow rate)*|
|W/m2||watt per square meter(irradiance)|
|cd/m2||candela per square meter(luminance)|
|bit/s||bit per second(data rate)|
|pH||pH value(acidity; logarithmic quantity)|
|dBW||decibel relative to 1 W(power level)|
|Bspl||bel(sound pressure level; logarithmic quantity)*|
|count||1 (counter value)|
|/||1 (ratio e.g., value of a switch;])|
|%||1 (ratio e.g., value of a switch;])|
|%EL||Percentage(remaining battery energy level)|
|EL||seconds(remaining battery energy level)|
|1/s||1 per second(event rate)|
|1/min||1 per minute(event rate, 'rpm')|
|beat/min||1 per minute(heart rate in beats per minute)*|
|beats||1 (Cumulative number of heart beats)*|
|S/m||Siemens per meter(conductivity)|
|VAs||volt-ampere second(Apparent Energy)|
|var||volt-ampere reactive(Reactive Power)|
|vars||volt-ampere-reactive second(Reactive Energy)|
|J/m||joule per meter(Energy per distance)|
|kg/m3||kilogram per cubic meter(mass density, mass concentration)|
|NTU||Nephelometric Turbidity Unit]|
The interval(ms) is the number of milliseconds between samples reported in the submitted data. In synchronous mode the interval is added for each sampling event. In asynchrounous mode (Sample pin is not wired) every interval milliseconds simulated time a sample is recorded.
Note: simulated time is usually real-time but for high frequency circuits this is not always true
Each Edge Impulse project has a unique API key ei_.. which can be found in the Dashboard/Keys panel. This is required to submit the data to the correct project.
Each Edge Impulse project has a unique HMAC key which can be found in the Dashboard/Keys panel. This is required to secure the submitted data.
Edge Impulse models have a minimal data set requirement. To submit the same data multiple times select submission count more than one. Each data set is rotated by 1 on each submission so that the data sets are not all identical.
The Edge Impulse Ingest endpoint support 3 destination locations. This is where the data set will be directed when submitted