ivas sensor device (ethernet) · protection grade ip67 (when cable connected) according to iso...

37
Version 0.5 IVAS Sensor Device (Ethernet) Part No 0273600075 Operating Instructions

Upload: others

Post on 05-Nov-2020

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: IVAS Sensor Device (Ethernet) · Protection grade IP67 (when cable connected) according to ISO 20653 Norm Sensors High-Bandwidth Accelerometer (1-axis, corresponds to X-axis in housing)

Version 0.5

IVAS Sensor Device (Ethernet)Part No 0273600075

Operating Instructions

Page 2: IVAS Sensor Device (Ethernet) · Protection grade IP67 (when cable connected) according to ISO 20653 Norm Sensors High-Bandwidth Accelerometer (1-axis, corresponds to X-axis in housing)

This preliminary operating instructions present the status of the specifications. It will be confirmed when validation has been completed with positive results.

Product part number: 0273600075

Page 3: IVAS Sensor Device (Ethernet) · Protection grade IP67 (when cable connected) according to ISO 20653 Norm Sensors High-Bandwidth Accelerometer (1-axis, corresponds to X-axis in housing)

3

Table of contents

1 Scope of delivery 6

2 General product description 6

2.1 Main functions and properties of the product 62.2 Intended use and environment 72.2.1 Installation situation 82.2.2 Security measures 92.2.3 Operating conditions 92.3 Key features 9

3 Safety and warning notes 10

4 Technical description 10

4.1 Working principle 104.2 Overview 114.2.1 Product Overview 11

5 Datastreamer Application 11

5.1 Release notes 115.2 MQTT Communication Overview 125.2.1 MQTT Topics on which IVAS device publish data 125.2.2 MQTT Topics which IVAS device can subscribe to 125.3 Startup message 125.4 Configuration 135.4.1 Default configuration 135.4.2 Device configuration 145.4.3 Device configuration Details: 145.4.4 Sensor Configuration 155.5 Sensor data format 155.5.1 High frequency sensor data format 155.5.2 Low frequency sensor data format 155.6 Jumping to Bootloader & FOTA 16

6 Bootloader 17

6.1 Release notes 176.2 Preface 176.3 HTTP Server 176.4 Flash Programming 186.5 Bootloader Execution Flow 186.6 Main Bootloader/Application Firmware update 196.7 Bootloader example timing 206.8 Network Configuration 206.9 Device log 216.10 Main Boot HTTP POST Message Information 216.10.1 Flag Status 216.10.2 Application Download 226.10.3 Bootloader Download 226.10.4 Configuration Download 22

7 Known Limitations 23

8 Hardware 23

8.1 General data 23

Page 4: IVAS Sensor Device (Ethernet) · Protection grade IP67 (when cable connected) according to ISO 20653 Norm Sensors High-Bandwidth Accelerometer (1-axis, corresponds to X-axis in housing)

4

9 Installation, handling and storage 23

9.1 Fixation 239.2 Connecting the module 259.2.1 Electrical connection 259.3 Handling 259.4 Storage 25

10 IVAS Ecosystem 25

10.1 Hardware Setup 2510.1.1 Required Equipment for testing and data logging 2510.2 Software Setup 2610.3 Script Functionality 2710.3.1 Script List 2710.3.1.1 Network Configurator 2710.3.1.2 Data Collector 2810.3.1.3 Data Post Processor 2910.3.1.5 Reset Tester 2910.3.1.6 Long Period Data Analyzer 29

11 Testing 30

12 Information on disposal and recycling 30

13 Regulatory information 30

13.1 Certification 3013.2 Target markets 3113.3 Open Source Software information 31

Page 5: IVAS Sensor Device (Ethernet) · Protection grade IP67 (when cable connected) according to ISO 20653 Norm Sensors High-Bandwidth Accelerometer (1-axis, corresponds to X-axis in housing)

5

Table of figuresFigure 1: Picture of the IVAS sensor device 6Figure 2: Front and back with labelling 6Figure 3: Main dimensions of the device 7Figure 4: Pin configuration IVAS-ETH referring to DIN EN 61076-2-109 7Figure 5: Installation 8Figure 6: Ethernet CAT6A (10 Gbps), shielded with Plug straight M12 SPEEDCON 9Figure 7: Axis of low g and high g sensors 11Figure 8: Assembly surface 24Figure 9: Overview system setup 26Figure 10: POE Injector, 1 port, 30W, IEEE 802.3at-compliant, indoor 26Figure 11: Overview different python scripts for IVAS sensor 27Figure 12: IP configuration example 28

Table 1: Operating conditions 9Table 2: Key features 9Table 3: history release notes FW 11Table 4: MQTT topics I 12Table 5: MQTT topics II 12Table 6: configuration example 13Table 7: IVAS payload – high-g sensor 15Table 8: IVAS payload – low-g sensor 16Table 9: IVAS Bootloader history 17Table 10: IVAS Pythom scripts – example 18Table 11: Update process 19Table 12: Update process 19Table 13: Bootloader example timing 20Table 14: Main Boot Message Information 21Table 15: Typical values – hardware 23Table 16: IVAS clockwise coordinate system 23Table 17: Assembly surface 24

Page 6: IVAS Sensor Device (Ethernet) · Protection grade IP67 (when cable connected) according to ISO 20653 Norm Sensors High-Bandwidth Accelerometer (1-axis, corresponds to X-axis in housing)

6

1 Scope of delivery The sensor device and the operating instructions are included in the scope of delivery. Cable and fi xing material is not included.

2 General product description All values given in this technical documentation are typical values, measured in a certain context. Deviations to these values can be observed.

2.1 Main functions and properties of the product

The Intelligent Vibration Analysis Sensor (IVAS) is a compact and robust sensor device equipped with two MEMS accel-eration sensors – for high bandwidth and high-resolution vibration measurements. Furthermore, it integrates seamlessly into existing communication infrastructure and offers the possibility to implement use case specifi c algorithms on the sensor device. IVAS-ETH enables predictive maintenance through vibration-based condition monitoring. By analyzing the frequency spectrum created by machines and other moving parts e.g. in pumps, motors, linear drives or ventilation systems, it is possible to assess the wear of bearings and other components. This effectively allows the prevention of unplanned standstills. For process monitoring, this technique enables an integrated continuous quality control and gives the informa-tion to set the optimal process parameters.

Other applications, uses or specifi cations must be imperatively evaluated and released by Bosch Connected Devices and Solutions (BCDS).

Communication with the gateway is done via Ethernet (see chapter 4.). Power supply is ensured through the connection of the device to PoE device (see chapter 5.3).The device is designed to be assembled with the contact surface parallel to the measurement area (please also see chapter 6.1).

Figure 1: Picture of the IVAS sensor device.

Figure 2: Front and back with labelling.

Page 7: IVAS Sensor Device (Ethernet) · Protection grade IP67 (when cable connected) according to ISO 20653 Norm Sensors High-Bandwidth Accelerometer (1-axis, corresponds to X-axis in housing)

7

36 3

6

49,73

34,1

6,6 (2x)

6,3

(2x)

A A

B B

C C

D D

E E

F F

4

4

3

3

2

2

1

1

ivas-eth_gesamt_v03-asmGEWICHT:

A4

BLATT 1 VON 1MASSSTAB:1:1

ZEICHNUNGSNR.

BENENNUNG:

ÄNDERUNGZEICHNUNG NICHT SKALIEREN

WERKSTOFF:

DATUMSIGNATURNAME

ENTGRATENUND SCHARFEKANTENBRECHEN

OBERFLÄCHENGÜTE:WENN NICHT ANDERS DEFINIERT:BEMASSUNGEN SIND IN MILLIMETEROBERFLÄCHENBESCHAFFENHEIT:TOLERANZEN: LINEAR: WINKEL:

QUALITÄT

PRODUKTION

GENEHMIGT

GEPRÜFT

GEZEICHNET

Figure 3: Main dimensions of the device

10 Mbits/sec, 100 Mbits/sec, 1000 Mbits/sec, Twisted Pair

1: TXD1+2: TXD 1-3: RXD2+4: RXD2-

12

34 5

6

78

5: BID4+6: BID4-7: BID3-8: BID3+

Figure 4: Pin configuration IVAS-ETH referring to DIN EN 61076-2-109

2.2 Intended use and environment

The IVAS-ETH is CE marked and is in conformity with the essential requirements of 2014/30/EU (EMC Directive) for the intended use conditions, environments, and installation conditions described in the following:

Note: Use of IVAS-ETH for control of machinery under the aspect of functional safety is not authorized and voids the validity of the Declaration of Conformity (DoC). It is not allowed to integrate the IVAS-ETH in controls of machinery (e.g. for an emergency switch-off or regulation of machine revolutions)

Note: Use of IVAS-ETH in environments different from those listed below, is not authorized and voids the validity of the CE DoC.

The IVAS-ETH shall be used for vibration monitoring purposes in the following environments or in physical connection with the listed machinery:

Industrial as specified in EN61000-6-2 and EN61000-6-4, including

�industrial areas indoor and outdoor (non-military)

�industrial locations characterized by the presence of

Page 8: IVAS Sensor Device (Ethernet) · Protection grade IP67 (when cable connected) according to ISO 20653 Norm Sensors High-Bandwidth Accelerometer (1-axis, corresponds to X-axis in housing)

8

�industrial, scientific, and/or medical devices (non-life sustaining)

�large inductive and capacitive loads with frequent switching

�high currents and high magnetic field strengths

Machine tools as specified in EN 50370-1 and -2

�This European Standard specifies the EMC limits of machine tools (with exception of electric discharge machines (EDM)) which are dedicated for industrial and similar applications, and using electricity with a voltage below 1000 V AC / 1500 V DC. Machine tools can contain motors, heating elements or combinations thereof; they can contain electric and electronic circuitry. They are powered from the grid or by any other electric power supply.

Railway applications – Rolling stock – Apparatus as specified in EN 50121-3-2

�This European Standard specifies the EMC limits in relation to electromagnetic disturbances for electrical and electronic apparatus which are used on board of railway vehicles

Lifts, escalators and moving walks as specified in EN12015/12016

�This European Standard specifies the EMC limits in relation to electromagnetic disturbances and test conditions for lifts, escalators and moving walks, which are intended to be permanently installed in buildings.

Light-industrial, commercial, residential as specified in EBN61000-6-1 and EN61000-6-3, for example

�residential buildings and areas such as houses, apartments, rooms

�commercial areas such are shops, super markets, wholesale markets

�office spaces for business and administration

�entertainment locations such as cinemas, restaurants, dancing clubs

�outdoor locations such as gas stations, parking spaces, sports facilities

�small business such as workshops, laboratories, service areas

No calibration of the IVAS-ETH is applied at production, and therefore, no absolute accuracy can be specified. IVAS-ETH shall enable the customer to investigate and to detect relative changes in the vibration of the machine to which IVAS-ETH is physi-cally mounted. As a result of the investigation the customer shall conclude if vibration data of the IVAS-ETH can be correlated with relevant information such as the maintenance status or process performance of the machine.

2.2.1 Installation situation

The IVAS-ETH variant is an IP network device supplied via Power-over-Ethernet (PoE), e.g. through a PoE-enabled network switch. The following installation conditions are supported:

�Shielded cable

�IVAS device grounded or isolated

Shielded cable – grounded installation

POErouter

IVAS

Shielded cable – isolated installation

POErouter

IVAS

Figure 5: Installation

Page 9: IVAS Sensor Device (Ethernet) · Protection grade IP67 (when cable connected) according to ISO 20653 Norm Sensors High-Bandwidth Accelerometer (1-axis, corresponds to X-axis in housing)

9

Note: We recommend to use Network cable – e.g. NBC-MSX/20,0-94F/R4AC SCO from Phoenix Contact:https://www.phoenixcontact.com/online/portal/gb/?uri=pxc- oc-itemdetail:pid=1421857&library=gben&pcck=P&tab=1&selectedCategory=ALL

2.2.2 Security measures

The IVAS-ETH supports the TCP/IP protocol. To enable the transmission of measurement data to a certain network host, this host has to initialize a TCP connection to IVAS on the command port (indicated in the periodic UDP messages). As long as this connection is alive, IVAS sends data to the originating host on the respective sensor ports (see chapter 5 for details).

The IVAS-ETH with the current Firmware v0.1.x is not a series product and does not support Bosch standards for device security. No security measures are implemented in v0.1.x to prevent access to an external attacker.

Therefore, the following measures must be implemented by the customer in order to prevent risk of cyber-attacks:

�Connect the IVAS-ETH to an isolated LAN without connection to an external network.

�An attacker might use the IVAS-ETH as a Trojan horse for his malware. Therefore, never connect the IVAS-ETH to the internet and move it back into the customer’s network.

Note: Use of IVAS-ETH without the protective measures increases the risk of cyber-attacks and can lead to interruption of machines, falsified measurements, unauthorized access to data in the customer’s network and environment, or other significant damage.

2.2.3 Operating conditions

DESCRIPTION VALUE

Operating temperature -40 °C – 85 °C

Humidity Not evaluated

Table 1: Operating conditions

2.3 Key features

DESCRIPTION VALUE

Dimensions 36x36x34.1 mm³ + connector (see dimensions figure 3)

Weight 190 g

Protection grade Stainless steel 1.4301

Protection grade IP67 (when cable connected) according to ISO 20653 Norm

Sensors

High-Bandwidth Accelerometer (1-axis, corresponds to X-axis in housing)

Bandwidth 20 kHz Sampling rate 62.5 kHz Sensitivity 200 mg Range ±96 g

High-Sensitivity Accelerometer (3-axis) Bandwidth 3 kHz Sampling rate 6.4 kHz Range ±16g Sensitivity <1mg

Table 2: Key features

Figure 6: Ethernet CAT6A (10 Gbps),

shielded with Plug straight M12 SPEEDCON

Page 10: IVAS Sensor Device (Ethernet) · Protection grade IP67 (when cable connected) according to ISO 20653 Norm Sensors High-Bandwidth Accelerometer (1-axis, corresponds to X-axis in housing)

10

3 Safety and warning notes A list of comprehensive notes and regulations for the safe use, handling, or maintenance of the product (e.g. transport, assembly, production process, design, installation notes, etc.), which must be observed by the customer, OEM, end custom-er, service technician, or other relevant persons or groups.

Please note that the device may be seriously damaged or sensor performance might be influenced by:

�Exceeding the maximum operating conditions

�The sensor must be checked by an agreed technician when exceeding these limits. In particular, the operating temperature range defined in chapter 2.2.3 must never be exceeded, even if the product is not operating (storage etc.).

�A damaged sealing

�If the sealing is damaged, the device must be verified by an agreed technician and, if necessary, substituted.

�In case of damaged sealing, water ingress or chemical ingress can be possible. Water ingress as well as chemical ingress must be avoided: Water ingress or chemical ingress can damage the product, temporarily or permanently.

�Deformation or visible damage of the product

�Housing of sensor must not be drilled, crushed, wedged or deformed.

�Painting or coating that covers the marking of the housing is prohibited.

Fixing or mounting of the IVAS Sensor module may at no time affect the safe use of the tagged asset. In particular, the follow-ing places are not suitable for mounting the IVAS Sensor module.

�Protective equipment

�Ventilation shaft and louvers

�Control elements

�Nameplates, official license plates and lighting equipment

�Service and clutch areas as well as soft grip surfaces

�Areas in close proximity to flying sparks as well as areas with strong thermal or mechanical impact

�The structural integrity of the object must not be impacted by the mounting of the IVAS. Screwing holes must not perforate housings of machines for which integrity is essential (e.g. pumps, gear boxes etc.).

4 Technical description

4.1 Working principle

The device should only be operated by trained service. The device is mounted with a M6 screw and connected to the Ether-net Bus and power supply lines, and the configuration through the SW application.

The working principle of the device is based on the measurements of mechanical vibration by using two MEMS sensors, one for high bandwidth frequencies and reduced sensitivity, and another one for measurement of low bandwidth frequencies and increased sensitivity.

The transfer of the vibration to the sensors will be done through the contact of the housing surface to the measured surface according to the axis system described in the IVAS-ETH housing.

The vibration will be transferred to the sensors via mechanical contact by screwing the device to the surface.

Page 11: IVAS Sensor Device (Ethernet) · Protection grade IP67 (when cable connected) according to ISO 20653 Norm Sensors High-Bandwidth Accelerometer (1-axis, corresponds to X-axis in housing)

11

4.2 Overview

4.2.1 Product Overview

The Intelligent Vibration Analysis Sensor (IVAS) is a sensor device equipped with two MEMS acceleration sensors – for high bandwidth (high frequency) and high-resolution (low frequency) vibration measurements. It integrates seamlessly into existing communication infrastructure (Ethernet) and enables predictive maintenance through vibration-based condition monitoring by implementing use-case specifi c algorithms.

The sensor specifi cation as confi gured in application are:

High frequency sensor

�Single axis sensor

�Sampling rate: 62.5 KHz

�Range: +/- 96 g

Low frequency sensor

�3-axis sensor

�Sampling rate: 6.4 KHz

�Range: +/- 16 g

Reference: https://www.bosch-connectivity.com/media/product_detail_ivas/ivas_datasheet.pdf

Legend:

X, Y, Z: accelerometer axis (low g sensor)X: accelerometer axis (high g sensor)

Legend:

X, Y, Z: X: accelerometer axis

x

y

zx

Figure 7: Axis of low g and high g sensors

5 Datastreamer Application The IVAS Datastreamer application is capable of streaming the raw sensor values (in bulk payload) from the low and high frequency sensors along with timestamp to a MQTT broker through the Ethernet interface.

5.1 Release notes

DATE VERSION CHANGELOG

23.03.2020 v0.2.1 initial data streamer PoC release

Table 3: history release notes FW

Page 12: IVAS Sensor Device (Ethernet) · Protection grade IP67 (when cable connected) according to ISO 20653 Norm Sensors High-Bandwidth Accelerometer (1-axis, corresponds to X-axis in housing)

12

5.2 MQTT Communication Overview

5.2.1 MQTT Topics on which IVAS device publish data

TIPIC DESCRIPTION FORMAT

ivas/<device_id>/startup Startup message JSON

ivas/<device_id>/sensor/hf High frequency sensor data format Raw

ivas/<device_id>/sensor/lf Low frequency sensor data format Raw

Table 4: MQTT topics I

Example Usage

User can subscribe and monitor incoming data from the sensors using the basic Mosquito tools: mosquito_sub -v -t „<topic>“

5.2.2 MQTT Topics which IVAS device can subscribe to

TIPIC DESCRIPTION FORMAT

ivas/<device_id>/device/config Device configuration JSON

ivas/<device_id>/sensor/config Sensor configuration JSON

ivas/<device_id>/SwitchToBoot Switch to Bootloader JSON

ivas/device/response Subscribe Response JSON

Table 5: MQTT topics II

Example Usage

Users can publish data for configuration, reset or trigger FOTA for every single IVAS device within the network.

�Device should be operational, and successfully subscribed to MQTT Broker

�User must be in the same network infrastructure.

mosquito_pub -t “<topic>” -m “<Payload>”

(or)

mosquito_pub -f “<topic>” -f <filename>

5.3 Startup message

ivas/<device_id>/startup

After every reboot, the application publishes once the startup message which contains the following information:

�Self Test: Self test results of peripherals

�Time stamp: Unix timestamp in seconds

�Reset cause: Device reset cause

�Version: Firmware and hardware version

Page 13: IVAS Sensor Device (Ethernet) · Protection grade IP67 (when cable connected) according to ISO 20653 Norm Sensors High-Bandwidth Accelerometer (1-axis, corresponds to X-axis in housing)

13

Example Startup message from the sensor is with the following payload format (JSON):

{ „SelfTest“: { „BMI280“:“Success“, „SMB470“:“Success“, „TMP112“:“Not performed“, „MQTT“:“Success“, „External flash“:“Success“ }, „TimeStamp“:[„1585841213“], „ResetCause“:“SOFTWARE_RESET“, „Version“: { „FwVersion“:“v0.2.0_TestSpec“, „HwVersion“:“HW_R1“ } }

5.4 Configuration

You can configure the following parameters in the IVAS application:

�Device Network configuration

�Sensor selection

Note: For User convenience, the user is provided with python scripts that can easily change the overall device configuration. The configuration comes in a form of a JSON object that can be edited for every device required to be reconfigured. For more details on usage of the python script, check Python Ecosystem Guide.

5.4.1 Default configuration

When the IVAS application starts, it uses the default configuration until new configuration is written to Configuration memo-ry in NVM (Non-Volatile Memory):

CONFIGURATION VALUE DESCRIPTION

Device IP 192.168.178.2 Default device IP

Device Netmask 255.255.255.0 Default device Netmask

Device Gateway 192.168.178.1 Default device gateway

HTTP Server IP 192.168.178.100 Default HTTP Server IP

SNTP Server IP 192.168.178.100 Default SNTP Server IP

MQTT Broker IP 192.168.178.100 Default MQTT broker IP

MQTT Broker Port 1883 Default MQTT broker port

HTTP Server Port 8000 Default HTTP server port

High frequency sensor Enable Enabled By default enabling high frequency sensor

Low frequency sensor Enable Enabled By default enabling low frequency sensor

Temperature sensor Enable Enabled By default enabling temperature sensor

DHCP Enable Enabled By default enabling DHCP

Table 6: configuration example

Page 14: IVAS Sensor Device (Ethernet) · Protection grade IP67 (when cable connected) according to ISO 20653 Norm Sensors High-Bandwidth Accelerometer (1-axis, corresponds to X-axis in housing)

14

5.4.2 Device configuration

Under Device Configuration we can:

�Switch between the static/dynamic IP for the device,

�Configure the device static IP settings,

�Configure MQTT broker IP settings,

�Configure SNTP server IP settings

�We can enable/disable the sensors for raw data streaming.

The IVAS device always takes the client and server network configurations from NVM. If the user configures new network IP settings, they are validated for ipv4 format only and is stored in Configuration memory in NVM. Thereafter the IVAS device tries to establish connection based on the new network settings. The embedded software is not able to ensure whether the new IP network setup is available or not. Hence it is the sole responsibility of the USER to create a network in which the communication between IVAS device and server is possible.

Note: If proper network setup is not available, the IVAS device will not be reachable to the server and vice-versa.

5.4.3 Device configuration Details:

ivas/<device_id>/device/config

This topic is used to set networking configurations of the device in order to achieve connectivity:

�network: IVAS device Network settings

�mqtt: MQTT broker network settings

�sntp: SNTP server network settings

{ “network”: { “isdhcp” : <true/false>, “ip” : “<IP address>”, “netmask” : “<Netmask>”, “gateway” : “<Gateway IP>”, }, “mqtt”: { “broker” :<Broker IP>”, “port” : <Broker Port>, }, “sntp”: { “server” : <Server IP>”, “port” : <port number>, } }

Note: IP Addresses are in IPv4 format

Responce:

“device/deviceConfig/<status>”

<status> denotes the result of processing the command:

�parseFailure : Parsing of payload has failed

�configStoreSuccess : Configuration is successfully stored in NVM

�configStoreFailure : Storing the configuration in NVM has failed

Page 15: IVAS Sensor Device (Ethernet) · Protection grade IP67 (when cable connected) according to ISO 20653 Norm Sensors High-Bandwidth Accelerometer (1-axis, corresponds to X-axis in housing)

15

5.4.4 Sensor Configuration

ivas/<device_id>/sensor/config Sensor configuration topic allows enable/disable of specific sensor on the device

{ “Enable”: { “smb470” : <true/false>, “bmi280” : <true/false>, “temp” : <true/false>, } }

Note: Streaming of Temperature data is not supported

Responce:

device/sensorConfig/<status>”

<status> denotes the result of processing the command:

�parseFailure : Parsing of payload has failed

�configStoreSuccess : Configuration is successfully stored in NVM

�configStoreFailure : Storing the configuration in NVM has failed

5.5 Sensor data format

Raw sensor data from high and low frequency sensors along with timestamp are streamed via MQTT topics as bulk payloads.

5.5.1 High frequency sensor data format

ivas/<device_id>/sensor/hf Number of samples in a single payload : 192 Total length of the payload : (192*4) + 8 = 776 bytes

Data format:

BASE TIMESTAMP** SAMPLE 1 SAMPLE 2 ... SAMPLE N

delta time*** axis data delta time axis data delta time axis data

uint64* uint16* int16* uint16 int16 uint16 int16

8 bytes 2 bytes 2 bytes 2 bytes 2 bytes 2 bytes 2 bytes

Table 7: IVAS payload – high-g sensor

*The bytes are in Little endian format.

** The base timestamp is SNTP timestamp in microseconds

*** The delta time corresponding to a sample is the time difference (in microseconds) from the previous sample. For 1st sample in the payload it is 0.

If SNTP time is not available from server for a maximum of 5 retries, then the system time will be used for timestamp.

5.5.2 Low frequency sensor data format

ivas/<device_id>/sensor/lf Number of samples in a single payload : 42 Total length of the Payload: (42*6)+8 = 260 bytes

Page 16: IVAS Sensor Device (Ethernet) · Protection grade IP67 (when cable connected) according to ISO 20653 Norm Sensors High-Bandwidth Accelerometer (1-axis, corresponds to X-axis in housing)

16

Data format:

BASE TIMESTAMP** SAMPLE 1 SAMPLE 2 ... SAMPLE 42

x y z x y z x y z

uint64* int16* int16* int16* int16 int16 int16 int16 int16 int16

8 bytes 2 bytes 2 bytes 2 bytes 2 bytes 2 bytes 2 bytes 2 bytes 2 bytes 2 bytes

Table 8: IVAS payload – low-g sensor

* The bytes are in little endian format.

** The base timestamp is SNTP timestamp in microseconds

If SNTP time is not available from server for a maximum of 5 retries, then the system time will be used for timestamp.

5.6 Jumping to Bootloader & FOTA

From Application we can intentionally switch to Bootloader by two ways

1. Publishing command through the topic “SwitchToBoot” and JSON payload configuration for “boot”. 2. Power-On Reset

We can update the Datastreamer application using FOTA by publishing using the same topic.

Note: A Power-On Reset is triggered by a power cycle of the device, for example by switching the Power-Over-Eth-ernet (POE) OFF for some seconds and then back to ON.

ivas/<device_id>/SwitchToBoot

This topic allows the following actions:

�Boot: Switch to bootloader without specific reason from application

�AppFWUpdate: Switch to bootloader for Application firmware update

{ “Boot”: { “gotoboot”: <true/false> }, “AppFWUpdate”: { “update”: <true/false> } }

Responce:

“device/switchToBoot/<status>”

<status> denotes the result of processing the command.

�parseFailure : Parsing of payload has failed

�success : Parsing is success

Note: In case of updating the Datastreamer or Bootloader:

�An independent watchdog is always enabled by default in the Main Bootloader and remains active until a reset.

�Upon jump to any IVAS application, the watchdog has to be fed/refreshed to avoid Watchdog resets. In the DataS-treamer application it is currently fed in the FreeRTOS Idle task Hook.

Page 17: IVAS Sensor Device (Ethernet) · Protection grade IP67 (when cable connected) according to ISO 20653 Norm Sensors High-Bandwidth Accelerometer (1-axis, corresponds to X-axis in housing)

17

6 Bootloader

6.1 Release notes

DATE VERSION CHANGELOG

31.1.2020 v0.2.1 Initial bootloader for Datastreamer PoC

Table 9: IVAS Bootloader history

6.2 Preface

IVAS bootloader consists of 2 stages :

�Stage-1 Bootloader

�Main Bootloader.

Main bootloader functionality are,

1. Jumps to valid application if available 2. Downloads Main bootoader firmware/ Application firmware/ Boot Configuration upon user request

1. Verifies signature of the downloaded firmware 2. Jumps to Stage-1 bootloader for swapping the firmware

Stage-1 bootloader functionality are,

1. Boots the IVAS device

2. Jumps to Main bootloader

3. Swap the downloaded firmware

4. Recover Main bootloader firmware if necessary

6.3 HTTP Server

HTTP server is required for proper communication with bootloader. HTTP must serve,

1. POST method 2. GET method 1. With Range header support

Note: For User convenience, the Python scripts used to demonstrate the device capabilities have built in HTTP server, which runs in the background. For more details on usage of the python script, check Python Ecosystem Guide.

Page 18: IVAS Sensor Device (Ethernet) · Protection grade IP67 (when cable connected) according to ISO 20653 Norm Sensors High-Bandwidth Accelerometer (1-axis, corresponds to X-axis in housing)

18

The IVAS Device needs access to the following file structure to be served from the server:

DOWNLOAD FILE NAME FILE CONTENTS DESCRIPTION

IvasUserConfig.txt { “Boot”: { “AppUpdate” : true, “BootUpdate” : true, “BootConfig” : true } }

User update request

IvasBootloaderConfig.txt { “http”: { “ip” : “192.168.178.100”, “port” : 8000 } } Bootloader Configuration

IvasApplication.bin Application firmware

IvasBootloader.bin Bootloader firmware

Table 10: IVAS Pythom scripts – example

6.4 Flash Programming

IVAS Device can be programmed by,

1. Flash Stage1Boot_HW_R1.bin in address 0x08000000 2. Flash MainBoot_HW_R1_signed.bin in address 0x08020000

6.5 Bootloader Execution Flow

Following steps describes Bootloader execution,

1. Bootloader will start execution from Stage-1 bootloader

2. Stage-1 bootloader will jump to Main bootloader During Boot up, if external flash is corrupted; same will be erased

3. Main bootloader will POST startup info to the server

1. {“$(DEVICE_MAC_ID)”:”{\”$(DEVICE_MAC_ID)\”:\”0.2.1\”}”} 2. Here 0080E1000000 is IVAS device mac id and 0.2.1 is Bootloader version.

4. Application check

1. If valid application is available in IVAS, Main bootloader will jump to the application

2. If no valid application is available in IVAS, Main bootloader will remain

5. Update request from user

1. Main bootloader will request for update request from user with IvasUserConfig.txt 2. Download of IvasApplication.bin/IvasBootloader.bin/IvasBootloaderConfig.txt depends on IvasUserConfig.txt

file content, 3. If the flag is set true , corresponding file will be downloaded. If the flag is set false, corresponding file will not be downloaded.

Note: Do not enable more than one flag of AppUpdate,BootUpdate and BootConfig. If more than one flag is enabled NO download will be performed.

Page 19: IVAS Sensor Device (Ethernet) · Protection grade IP67 (when cable connected) according to ISO 20653 Norm Sensors High-Bandwidth Accelerometer (1-axis, corresponds to X-axis in housing)

19

FILE DESCRIPTION

AppUpdate IVAS downloads IvasApplication.bin

BootUpdate IVAS downloads IvasBootloader.bin

BootConfig IVAS downloads IvasBootloaderConfig.txt

Table 11: Update process

6.6 Main Bootloader/Application Firmware update

# FILE SEQUENCE DETAIL

1 Main Bootloader Download With BootUpdate flag true in IvasUserConfig.txt, IVAS Main Bootloader(IvasBoot-loader.bin) will be downloaded from the server

Upon download failure, 3 download retry

2 Verification After successful download, firmware and its signature (Key) will be verified

3 Stage -1 Bootloader Swapping Stage-1 bootloader backup the current running bootloader firmware and swaps the downloaded firmware into internal flash.

If swap operation failed, then previously running bootloader firmware will be copied

4 Firmware test Main Bootloader Firmware Test: If swap is successful, HTTP communication test will be performed.

�Test Success: Updated firmware will now be used as Main bootloader

�Test failure: Updated firmware will be rejected and backup Main bootloader firmware will be used as Main bootloader

Application Firmware Test: If firmware update is successful, Application Self test will be executed on the updated firmware.

�Test Success: Continue with new application firmware

�Test failure: Retry continuously for new IvasApplication.bin

�Place valid IvasApplication.bin in the server and Relaunch the server

�IvasApplication.bin download/verification may fail, due to sync issue (device download start and server file change)

Table 12: Update process

Note: In order to update the current running application which doesn‘t have self test feature, do a power-on reset with only AppUpdate enabled in UserConfig.txt file. Avoid flashing during ongoing download operation, as this might result in external flash corruption.

Page 20: IVAS Sensor Device (Ethernet) · Protection grade IP67 (when cable connected) according to ISO 20653 Norm Sensors High-Bandwidth Accelerometer (1-axis, corresponds to X-axis in housing)

20

6.7 Bootloader example timing

DETAILS TIME REMARKS

Initialization time (until startup message post)

7s

DHCP wait time 15s If DHCP is not successful, static IP will be assigned after timeout

HTTP GET timeout 100s

HTTP POST timeout 100s

User config HTTP GET request timeout 10s Occurrences - 1. After every reset(when no other requests are present), as a possibility for user to update any firmware/config 2. User config request for every 30 seconds, when there is no valid running applciation

HTTP Communication test (POST timeout)

100s Worst case scenario in case of server unavailability 5 reties * 100s = 500s ( Around 9 min)

Time between subsequent user requests 30s This delay will only be active, when there is no running application.

Firmware download- best case for every 512 blocks

Note: Depends on server response

550ms 1. 512 bytes response- 100ms Timeout 100s

2. After get delay - 100ms 3. Remaining for HTTP session closure and open

App firmware 173kb : 3mins approx Boot firmware 167KB : 3.2mins approx

Firmware verification time (CRC+Signature)

46s - 47s App firmware 173kb : 47s approx Boot firmware 167KB : 46s approx

Firmware swap time 30s - 1.50min

App firmware 173kb : 30s approx Boot firmware 167KB : 1.50mins approx (Swap+Backup)

Table 13: Bootloader example timing

Note: Based on the above timings and Bootloader design, maximum boot up time will be approximately 600 seconds, when HTTP and DHCP servers are not running.

6.8 Network Configuration

From Bootloader, we can configure the HTTP server settings by placing valid IvasUserConfig.txt and IvasBootloaderConfig.txt files in servers with enabling “BootConfig” flag in IvasUserConfig.txt and the configurations in IvasBootloaderConfig.txt. In an IVAS device in which Application is running, User should first switch to Bootloader using “SwitchToBoot” MQTT com-mand to make use of BootConfigUpdate option in Bootloader. Important points to be noted while configuring:

� The IVAS device always takes the client and server network configurations from NVM

� If the user configures new network IP settings, they are validated for ipv4 format only and is stored in Configuration memory in NVM. Thereafter the IVAS device tries to establish connection based on the new network settings.

� The embedded software is not able to ensure whether the new IP network setup is available or not.

Hence it is the sole responsibility of the USER to create a network in which the communication between IVAS device and server is possible.

If proper network setup is not available, the IVAS device will not be reachable to the server and vice-versa.

� New HTTP server settings are configurable only in Bootloader from currently running HTTP server

� New MQTT broker and SNTP server settings are configurable only in Application from currently running MQTT server

Page 21: IVAS Sensor Device (Ethernet) · Protection grade IP67 (when cable connected) according to ISO 20653 Norm Sensors High-Bandwidth Accelerometer (1-axis, corresponds to X-axis in housing)

21

6.9 Device log

IVAS device log messages will be sent to HTTP server as POST message in JSON format with the following format:

“{\”DEVICE MAC ID\”:\”POST message\”}”

6.10 Main Boot HTTP POST Message Information

SCENARIO POST MESSAGE

1. Bootloader startup info,

IVAS Device Mac ID and Bootloader Version {"$(DEVICE_MAC_ID)":"{\"$(DEVICE_MAC_ID)\":\"0.2.1\"}"}

Reset Cause {“$(DEVICE_MAC_ID)”:”SOFTWARE_RESET”}

NOTE: Different Reset Types:

� SOFTWARE_RESET

� POWER ON RESET

� WATCHDOG RESET

2. Multiple flag status

If more than one flag(AppUpdate/BootUpdate/BootConfig) is set, clear all flags

“{\”$(DEVICE_MAC_ID)\”:\”Since more than one flag (AppUpdate/BootUpdate/BootConfig) is set, none of the update request is processed\”}”

3. Swap status from Stage-1 bootloader result

BootTest enabled “{\”$(DEVICE_MAC_ID)\”:\”With successful Boot config update, jump to appli-cation\”}”

“{\”$(DEVICE_MAC_ID)\”:\”HTTP Communication test start\”}”

See Flag Status section for more details

4. User update request

Inform user (server) that new config file will be downloaded "{\"$(DEVICE_MAC_ID)\":\"Requesting user config file from HTTP server\"}"

Successful download of user config file from server "{\"$(DEVICE_MAC_ID)\":\"Downloaded user config file from HTTP server\"}"

If user config file download failed, jump to app "{\"$(DEVICE_MAC_ID)\":\"User config download failure...\"}"

Table 14: Main Boot Message Information

6.10.1 Flag Status

<No Flag> “{\”$(DEVICE_MAC_ID)\”:\”Jump on valid application\”}” AppUpdate “{\”$(DEVICE_MAC_ID)\”:\”Request for new application download\”}” AppUpdateRetry “{\”$(DEVICE_MAC_ID)\”:\”Downloaded app update fail. Retry app download...\”}” AppTesting “{\”$(DEVICE_MAC_ID)\”:\”Downloaded app self test fail.Retry app download..\”}” BootTest “{\”$(DEVICE_MAC_ID)\”:\”Downloaded boot update success. Perform communication test...\”}” AppTest “{\”$(DEVICE_MAC_ID)\”:\”Downloaded app update success.\”}” AppUpdateFail “{\”$(DEVICE_MAC_ID)\”:\”Downloaded app file is corrupted. Jump to app...\”}” BootUpdate “{\”$(DEVICE_MAC_ID)\”:\”Request for new boot download\”}” BootUpdateRetry “{\”$(DEVICE_MAC_ID)\”:\”Downloaded boot file is corrupted. Retry boot download...\”}” BootConfig “{\”$(DEVICE_MAC_ID)\”:\”Request for new boot config download\”}”

Page 22: IVAS Sensor Device (Ethernet) · Protection grade IP67 (when cable connected) according to ISO 20653 Norm Sensors High-Bandwidth Accelerometer (1-axis, corresponds to X-axis in housing)

22

6.10.2 Application Download

AppUpdate or AppUpdateRetry or AppTesting flag set

Download

“{\”$(DEVICE_MAC_ID)\”:\”Application download in progress\”}” ”{\”$(DEVICE_MAC_ID)\”:\”Application download success\”}” “{\”$(DEVICE_MAC_ID)\”:\”Application download failed\”}”

Verification

“{\”$(DEVICE_MAC_ID)\”:\”Application verification success\”}” “{\”$(DEVICE_MAC_ID)\”:\”Application verification failed\”}”

Swap

“{\”$(DEVICE_MAC_ID)\”:\”Application swap in progress...\”}”

Retry

“{\”$(DEVICE_MAC_ID)\”:\”Firmware download and verification failed, retry again...\”}” “{\”$(DEVICE_MAC_ID)\”:\”Firmware download failed after 3 attempts. Hence the request will not be processed.\”}”

6.10.3 Bootloader Download

BootUpdate or BootUpdateRetry flag set

Download

“{\”$(DEVICE_MAC_ID)\”:\”Bootloader download in progress\”}” “{\”$(DEVICE_MAC_ID)\”:\”Bootloader download success\”}” “{\”$(DEVICE_MAC_ID)\”:\”Bootloader download failed\”}” “{\”$(DEVICE_MAC_ID)\”:\”CRC failure during download\”}” “{\”$(DEVICE_MAC_ID)\”:\”Download failure due to invalid length of firmware\”}” “{\”$(DEVICE_MAC_ID)\”:\”Download failure due to invalid bootloader version\”}”

Test

“{\”$(DEVICE_MAC_ID)\”:\”HTTP Communication test\”}”

Verification

“{\”$(DEVICE_MAC_ID)\”:\”Bootloader verification success\”}” “{\”$(DEVICE_MAC_ID)\”:\”Bootloader verification failed\”}”

Swap

“{\”$(DEVICE_MAC_ID)\”:\”Bootloader swap in progress...\”}” “{\”$(DEVICE_MAC_ID)\”:\”Bootloader swapping successful\”}”

Retry

“{\”$(DEVICE_MAC_ID)\”:\”Firmware download and verification failed, retry again...\”}” “{\”$(DEVICE_MAC_ID)\”:\”Firmware download failed after 3 attempts. Hence the request will not be processed.”}”

6.10.4 Configuration Download

BootConfig flag set

Download

“{\”$(DEVICE_MAC_ID)\”:\”HTTP Configuration file download in progress\”}” “{\”$(DEVICE_MAC_ID)\”:\”HTTP Configuration file download success\”}” “{\”$(DEVICE_MAC_ID)\”:\”HTTP Configuration file download failed\”}”

To App

“{\”$(DEVICE_MAC_ID)\”:\”With successful Boot config update, jump to application\”}” “{\”$(DEVICE_MAC_ID)\”:\”Communication test failed.Hence, using previously running config\”}”

Page 23: IVAS Sensor Device (Ethernet) · Protection grade IP67 (when cable connected) according to ISO 20653 Norm Sensors High-Bandwidth Accelerometer (1-axis, corresponds to X-axis in housing)

23

Retry

“{\”$(DEVICE_MAC_ID)\”:\”Firmware download and verification failed, retry again...\”}” “{\”$(DEVICE_MAC_ID)\”:\”Firmware download failed after retries\”}”

7 Known Limitations 1. If the system resets in middle of download, it will not start again after reset. To download again, the user should request again through config file

2. The binary contents of internal flash memory is readable

8 Hardware

8.1 General data

WHAT VALUE

Input Voltage According to 802.3at Type 2

Power available at PD 25.50 W (peak performance)

Typical current consumption 305 mA*

Table 15: Typical values – hardware

*average value (might differ depending on software routine)

9 Installation, handling and storage

9.1 Fixation

Fixation of the module is to be made using a M6 screw with 9±1 Nm. Other fixation methods could damage the sensor module or influence the results of the measurement by preventing the vibration to be transferred correctly.

The fixation of the IVAS module should be made in a way that both marked sides are always visible, in order to ensure the correct measurement of vibration.

Axis system in housing is defined based on the X-axis of the High-Bandwidth Sensor.

The axis system of the High-Sensitivity Sensor is prepared currently with the X-axis from IVAS matching the Y-axis from the sensor, and the Y-axis from IVAS matching the X-axis from the sensor.

HINT: Channel 0,1 and 2 of the low g sensor have to be manually allocated to the corresponding axis (x,y,z). Allocation logic see tabular below (by using the BCDS logging script this step will be done automatically). This change is necessary to get a clockwise coordinate system:

DATA STREAM (LOW G SENSOR) IVAS HOUSING

Channel 0 (Y-Axis): X-Axis

Channel 1 (X-Axis): Y-Axis

Channel 2 (Z-Axis): Z-Axis

Table 16: IVAS clockwise coordinate system

Page 24: IVAS Sensor Device (Ethernet) · Protection grade IP67 (when cable connected) according to ISO 20653 Norm Sensors High-Bandwidth Accelerometer (1-axis, corresponds to X-axis in housing)

24

Note:

�The hole in the sensor is dedicated for mounting the sensor with a screw (no screw threads in the sensor housing)

�Assembly surface of 85 mm is fitting if you are using cables with 90°-socket only.

�STP files from the IVAS housing are available to download from the BCDS website.

Assembly surface:

Figure 8: Assembly surface

DIMENSION VALUE

Assembly screw ISO 4762 - M6 x 45 - 10.9

Screwing torque 9 +-1 Nm

High frequency axis X-axis

Table 17: Assembly surface

Page 25: IVAS Sensor Device (Ethernet) · Protection grade IP67 (when cable connected) according to ISO 20653 Norm Sensors High-Bandwidth Accelerometer (1-axis, corresponds to X-axis in housing)

25

9.2 Connecting the module

9.2.1 Electrical connection

Connector M12: Pole: X-coded 8 poles M12 connector IEC 61076-2-109, According to IEEE 802.3

9.3 Handling

The use of a high pressure cleaner or chemicals is not permitted. For cleaning, it is recommended to use a rag lightly humid-ified with water. Disassembly of the device by the end-customer is not permissible. Service and replacement of the product may only be performed by authorized personnel. For protection of the device, the product should always be transported in its original packaging and unwrapped only short before installation. Devices with visible damages (housing etc.) and devices that might have exceeded the absolute maximum ratings (e.g. dropped down from a height of more than 1m onto a hard sur-face) must not be used. Please pay special attention to the safety and warning notes in chapter 3 “Safety and warning notes”.

9.4 Storage

Recommended storage conditions: Temperature: max. 25°C

Furthermore, the storage place must be well ventilated and the temperature changes must be slow in order to avoid water condensation in the product. The device must be kept away from any potential source of heat and open flame. To avoid the ingress of water or dust is a non-connected state a lid should be used to protect the connector during storage and/or transport.

10 IVAS Ecosystem Hereinafter you can find a collection of scripts which should be used for demonstration purpose of the IVAS.

10.1 Hardware Setup

10.1.1 Required Equipment for testing and data logging

�RaspberryPi 3B (linux based host) or higher / Linux workstation (preferred)*

�External USB Storage (1,5 Mbit/s per device)

�PoE Injector / PoE Switch

�IVAS Sensor

*data rate handling is strongly depended of the performance of the client. To keep loss of data <1 % we recommend not to use more than 3 sensors with full

bandwidth together with a workstation as client in one ecosystem.

Page 26: IVAS Sensor Device (Ethernet) · Protection grade IP67 (when cable connected) according to ISO 20653 Norm Sensors High-Bandwidth Accelerometer (1-axis, corresponds to X-axis in housing)

26

Figure 9: Overview system setup

Note: The easiest way to power up your system is to use a POE-Injector. Therefore we recommend an injector e.g. PD-9001GC from Microchip with 30 W and 1 ETH-port: https://www.microchip.com/wwwproducts/en/PD-9001GC

10.2 Software Setup

Step by step commands for Linux environment. Please go through these steps to setup your system:

Step 1. Verify installed Python Version

python3 --version# Python 3.7 or newer is recommended

Step 2. Python Dependencies Installation

python3 -m pip install paho-mqttpython3 -m pip install h5pypython3 -m pip install numpy

Step 3. Install SNTP Server

sudo apt-get install ntp -ysntp --version

Changing default confi guration can be done accordingly:sudo nano /etc/ntp.conf

Reset the service when new pool is confi guredsudo service ntp restart

Check if NTP service is runningsudo service ntp status

Step 4. Install Mosquitto Broker

sudo apt-get install mosquitto=1.5.7-1 –y

Step 5. Install DHCP Server

sudo apt-get install isc-dhcp-server

Edit DHCP Server Confi guration: sudo nano -w /etc/dhcp/dhcpd.conf

Figure 10: POE Injector, 1 port, 30W, IEEE

802.3at-compliant, indoor

Page 27: IVAS Sensor Device (Ethernet) · Protection grade IP67 (when cable connected) according to ISO 20653 Norm Sensors High-Bandwidth Accelerometer (1-axis, corresponds to X-axis in housing)

27

Use the following confi guration for DHCP lease in dhcpd.confsubnet 192.168.178.0 netmask 255.255.255.0

{range 192.168.178.2 192.168.178.99;option routers 192.168.178.100;option subnet-mask 255.255.255.0;use-host-decl-names true;}

Restart DHCP Servicesudo service isc-dhcp-server restartsudo service isc-dhcp-server startsudo service isc-dhcp-server stop

Ensure that your Linux Host device (Rhasperry Pi have static IP confi guration:sudo nano /etc/network/interfaces

Add the following confi guration for your ethernet interface (Connected to the IVAS Sensor Network)auto **<Interface Name>**iface **<Interface Name>** inet static address 192.168.178.100 netmask 255.255.255.0

10.3 Script Functionality

Figure 11: Overview different python scripts for IVAS sensor

10.3.1 Script List

10.3.1.1 Network Confi gurator

The following script can be used to confi gure network settings, using the MAC Address for distinguishing between different sensors connected in the same setup:./network_confi gurator.py

Page 28: IVAS Sensor Device (Ethernet) · Protection grade IP67 (when cable connected) according to ISO 20653 Norm Sensors High-Bandwidth Accelerometer (1-axis, corresponds to X-axis in housing)

28

The script requires an argument. If mac is specified, the script will only update the specified device. If otherwise the –all argument is specified, it will update all sensors listed in the config.py. “--mac” Specify the mac addresses of the sensors to update “--all” Update all sensors from the config.py file

Network configuration is set within the config.py file accordingly. Each sensor listed within the config.py file, have separate “network” block holding the new configuration information that will be applied, after running the network configuration script.

“network”: { “type”: “dhcp”, # “static” or “dhcp” “ip”: “192.168.178.12”, “netmask”: “255.255.255.0”, “gateway”: “192.168.178.100”, },

SNTP Server Configuration is done via the following variables within the same file: CONFIG_DEFAULT_SNTPSERVER_IP = “192.168.178.100” CONFIG_DEFAULT_SNTP_SERVER_PORT = 123

The ecosystem provides a persistent configuration file config.py which can be used to specify a default configuration for each of the scripts. They are configurable variables used by the utility scripts and can be edited for fine-tuned control and ease of use. More specifically, there is a json-like structure of sensors. Each sensor configuration corresponds to a mac address key and offers a configuration of the processing constants, device network configuration, enabled measurements and the address of broker.

“FCD6BDFF741C”: { “processing”: { “lf_conversion_facts”: [1442.0, 1382.0, 1117.0], “lf_offset”: [0, 0, 0], “lf_timestamp_delta”: (1.0 / 6500.0) * 1e6, “hf_conversion_fact”: 5, “hf_offset”: 0, “hf_timestamp_delta”: (1.0 / 62500.0) * 1e6, }, “network”: { “type”: “dhcp”, # “static” or “dhcp” “ip”: “192.168.178.12”, “netmask”: “255.255.255.0”, “gateway”: “192.168.178.100”, }, “sensors”: { “hf_enabled”: False, “lf_enabled”: True, “temperature_enabled”: SENSORS_TEMERATURE_ENABLED, }, “broker”: {“ip”: “10.40.101.249”, “port”: 1883, “keepalive”: 60}, }

Figure 12: IP configuration example

10.3.1.2 Data Collector

Data Collector Script is used for collection of RAW Sensor data and logging its output to designated files.

./data_streamer.py --mac <MAC Addresses>

The script take arguments for more specific usage. Arguments are optional and default configuration can be changed in config.py.

Page 29: IVAS Sensor Device (Ethernet) · Protection grade IP67 (when cable connected) according to ISO 20653 Norm Sensors High-Bandwidth Accelerometer (1-axis, corresponds to X-axis in housing)

29

“--mac” MAC addresses of the devices “--all” Use all MAC addresses listed in the configuration “--ip” The ip address of the broker “--port” The port of the broker “--httplog” File for the HTTP post request logs “--dir” The output directory “--ftype” The type of the log file - csv or h5 “--fsize” The maximal size of the files. The unit must be either GB or MB

10.3.1.3 Data Post Processor

Data Post processor script takes pre recorded .csv file and applies scaling and offset to the samples. The corrected sample data is then written to new file with the pre-configured suffix. ./data_processor.py

The script takes the following optional arguments. “--input-dir” Specify the directory of the raw sensor files “--output-dir” Specify the directory of the processed sensor files “--verbose” Display Verbose information

Conversion factor is pre-configured and can be changed in the config.py file.

3.1.4. FOTA Trigger (Update Process)

Fota Trigger Script brings HTTP Server Instance and triggers reset with Update topic. The script configuration makes sure, what kind of update must be performed (Application/Bootloader). | Note: Make sure no other service runs on port 8000 before running the script | | — |./fota_trigger.py --mac <MAC Address>

The script take arguments for more specific usage. Arguments are optional and default configuration can be changed in config.py.

“--mac” MAC address of the device “--fw” The binary for the App FW Update “--type” “app” for Application or “boot” for Bootloader update “--ip” The ip address of the broker “--port” The port of the broker “--httplog” File for the HTTP post request logs

10.3.1.5 Reset Tester

The following script is used for verification of stability after reset. It resets the device using MQTT Topic, and monitors the successful recovery.

./reset_test.py --mac <MAC Address>

The script take arguments for more specific usage. Arguments are optional and default configuration can be changed in config.py.

“--mac” MAC addresses of the devices “--ip”, The ip address of the broker “--port” The port of the broker “--keepalive” Keep-alive timeout of MQTT “--tests” Number of test that will be run, 0 if there is no limit “--httplog” File for the HTTP post request logs

10.3.1.6 Long Period Data Analyzer

The Long period data analysis script parses pre-recorded .csv files with prerecorded data, and analyses gaps and inconsis-tent timestamps throughout the samples. ./ivas_long_test.py

Page 30: IVAS Sensor Device (Ethernet) · Protection grade IP67 (when cable connected) according to ISO 20653 Norm Sensors High-Bandwidth Accelerometer (1-axis, corresponds to X-axis in housing)

30

11 Testing Testing is a key discipline to master product related risks. The following tests have been performed.

Conformity with EMC Directive:

Tests have been done under the requirements specified in harmonized standards listed in chapter 9:

Conformity with PoE specifications:

In order to demonstrate conformity with PoE (Power on the Ethernet) standard the following test has been performed: Isolation tests according EN 60950-1 Information technology equipment - Safety - Part 1: General requirements

12 Information on disposal and recycling EU: Disposal according to the WEEE Directive 2012/19/EU

Do not dispose the IVAS-ETH into industrial waste! Electric and electronic devices that are no longer usable must be dis-posed according to the requirements of the European WEEE Directive 2012/19/EU to ensure environmental protection and reduction of waste by recycling of materials. For information and disposal in conformity with the WEEE Directive, please ask a recycling service provider with certification in your country for support.

The IVAS-ETH does not contain any battery.

Non EU countries: Do not dispose of the device into household or industrial waste! The IVAS-ETH shall be sorted for environ-mental-friendly recycling according to applicable regulation.

13 Regulatory information

13.1 Certification

IVAS Ethernet fulfils the essential requirements of the Directive 2011/65/EU (RoHS Directive) and of the Directive 2014/30/EU (EMC Directive). It is certified for operation in the EU for the intended use conditions clarified in chapter 2.2.

The following harmonized EMC standards have been applied by taking the envelope of requirements.

�EN61000-6-2:2005 Electromagnetic compatibility (EMC) - Generic standards - Immunity for industrial environments

�EN61000-6-2:2016 Electromagnetic compatibility (EMC) - Generic standards - Immunity for industrial environments

�EN50121-3-2:2016 Railway applications – Electromagnetic compatibility – Part 3-2: Rolling stock – Apparatus

�EN12016:2013 Electromagnetic compatibility - Product family standard for lifts, escalators and moving walks – Immunity (Note: accuracy of sensor data have not been monitored – not required with intended use as described in chapter 2.2)

�EN50370-2:2003 Electromagnetic compatibility (EMC) - Product family standard for machine tools - Part 2: Immunity

�EN61000-6-3:2011 Electromagnetic compatibility (EMC) - Part 6-3: Generic standards - Emission standard for residential, commercial and light-industrial environments

�EN61000-6-4:2011 Electromagnetic compatibility (EMC) - Part 6-4: Generic standards - Emission standard for industrial environments

�EN61000-6-4:2017 Electromagnetic compatibility (EMC) - Part 6-4: Generic standards - Emission standard for industrial environments

�EN12015:2014 Electromagnetic compatibility - Product family standard for lifts, escalators and moving walks

�EN50370-1:2005 Electromagnetic compatibility (EMC). Product family standard for machine tools. Emission

Page 31: IVAS Sensor Device (Ethernet) · Protection grade IP67 (when cable connected) according to ISO 20653 Norm Sensors High-Bandwidth Accelerometer (1-axis, corresponds to X-axis in housing)

31

13.2 Target markets

EU: The IVAS-ETH is CE marked and authorized for operation and sales to end users in the European Union (the target market).

China: The IVAS-ETH does not require certification for sales and operation in China (Source: TÜV Rheinland Apr.2019, no radio product, no product under CCC list). The customs tariff HS Code 9031809090 is recommended.

Other markets: If operation or sales is intended by the customer out of the named target market, the customer requests compliance with the specific regulations of the target market from BCDS, or ensures this by himself.

13.3 Open Source Software information

----------------------------------------------------------------------------------

FreeRTOS

The FreeRTOS kernel is released under the MIT open source license, the text of which is provided below.

This license covers the FreeRTOS kernel source files, which are located in the /FreeRTOS/Source directory of the official FreeRTOS kernel download. It also covers most of the source files in the demo application projects, which are located in the /FreeRTOS/Demo directory of the official FreeRTOS download. The demo projects may also include third party software that is not part of FreeRTOS and is licensed separately to FreeRTOS. Examples of third party software includes header files provided by chip or tools vendors, linker scripts, peripheral drivers, etc. All the software in subdirectories of the /FreeRTOS directory is either open source or distributed with permission, and is free for use. For the avoidance of doubt, refer to the comments at the top of each source file.

License text: -------------

Copyright (C) 2017 Amazon.com, Inc. or its affiliates. All Rights Reserved. Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the “Software”), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABIL-ITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

----------------------------------------------------------------------------------

ST Microelectronics stm32cubef7

* Copyright (c) 2017 STMicroelectronics. * * Redistribution and use in source and binary forms, with or without modification, * are permitted provided that the following conditions are met: * 1. Redistributions of source code must retain the above copyright notice, * this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright notice, * this list of conditions and the following disclaimer in the documentation * and/or other materials provided with the distribution. * 3. Neither the name of STMicroelectronics nor the names of its contributors * may be used to endorse or promote products derived from this software * without specific prior written permission. * * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS “AS IS” * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE

Page 32: IVAS Sensor Device (Ethernet) · Protection grade IP67 (when cable connected) according to ISO 20653 Norm Sensors High-Bandwidth Accelerometer (1-axis, corresponds to X-axis in housing)

32

* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. ---------------------------------------------------------------------------------- Serval Stack Eclipse Public License - v 2.0

THE ACCOMPANYING PROGRAM IS PROVIDED UNDER THE TERMS OF THIS ECLIPSE PUBLIC LICENSE (“AGREEMENT”). ANY USE, REPRODUCTION OR DISTRIBUTION OF THE PROGRAM CONSTITUTES RECIPIENT’S ACCEPTANCE OF THIS AGREEMENT.

1. DEFINITIONS

“Contribution” means:

a) in the case of the initial Contributor, the initial content Distributed under this Agreement, and b) in the case of each subsequent Contributor:

i) changes to the Program, and ii) additions to the Program;

where such changes and/or additions to the Program originate from and are Distributed by that particular Contributor. A Contribution “originates” from a Contributor if it was added to the Program by such Contributor itself or anyone acting on such Contributor’s behalf. Contributions do not include changes or additions to the Program that are not Modified Works.

“Contributor” means any person or entity that Distributes the Program.

“Licensed Patents” mean patent claims licensable by a Contributor which are necessarily infringed by the use or sale of its Contribution alone or when combined with the Program.

“Program” means the Contributions Distributed in accordance with this Agreement.

“Recipient” means anyone who receives the Program under this Agreement or any Secondary License (as applicable), includ-ing Contributors.

“Derivative Works” shall mean any work, whether in Source Code or other form, that is based on (or derived from) the Program and for which the editorial revisions, annotations, elaborations, or other modifications represent, as a whole, an original work of authorship.

“Modified Works” shall mean any work in Source Code or other form that results from an addition to, deletion from, or modi-fication of the contents of the Program, including, for purposes of clarity any new file in Source Code form that contains any contents of the Program. Modified Works shall not include works that contain only declarations, interfaces, types, classes, structures, or files of the Program solely in each case in order to link to, bind by name, or subclass the Program or Modified Works thereof.

“Distribute” means the acts of a) distributing or b) making available in any manner that enables the transfer of a copy. “Source Code” means the form of a Program preferred for making modifications, including but not limited to software source code, documentation source, and configuration files.

“Secondary License” means either the GNU General Public License, Version 2.0, or any later versions of that license, includ-ing any exceptions or additional permissions as identified by the initial Contributor.

2. GRANT OF RIGHTS

a) Subject to the terms of this Agreement, each Contributor hereby grants Recipient a non-exclusive, worldwide, royalty-free copyright license to reproduce, prepare Derivative Works of, publicly display, publicly perform, Distribute and sublicense the Contribution of such Contributor, if any, and such Derivative Works.

b) Subject to the terms of this Agreement, each Contributor hereby grants Recipient a non-exclusive, worldwide, royalty-free patent license under Licensed Patents to make, use, sell, offer to sell, import and otherwise transfer the Contribution of such Contributor, if any, in Source Code or other form. This patent license shall apply to the combination of the Contribution

Page 33: IVAS Sensor Device (Ethernet) · Protection grade IP67 (when cable connected) according to ISO 20653 Norm Sensors High-Bandwidth Accelerometer (1-axis, corresponds to X-axis in housing)

33

and the Program if, at the time the Contribution is added by the Contributor, such addition of the Contribution causes such combination to be covered by the Licensed Patents. The patent license shall not apply to any other combinations which include the Contribution. No hardware per se is licensed hereunder.

c) Recipient understands that although each Contributor grants the licenses to its Contributions set forth herein, no assur-ances are provided by any Contributor that the Program does not infringe the patent or other intellectual property rights of any other entity. Each Contributor disclaims any liability to Recipient for claims brought by any other entity based on infringe-ment of intellectual property rights or otherwise. As a condition to exercising the rights and licenses granted hereunder, each Recipient hereby assumes sole responsibility to secure any other intellectual property rights needed, if any. For example, if a third party patent license is required to allow Recipient to Distribute the Program, it is Recipient’s responsibility to acquire that license before distributing the Program.

d) Each Contributor represents that to its knowledge it has sufficient copyright rights in its Contribution, if any, to grant the copyright license set forth in this Agreement.

e) Notwithstanding the terms of any Secondary License, no Contributor makes additional grants to any Recipient (other than those set forth in this Agreement) as a result of such Recipient’s receipt of the Program under the terms of a Secondary License (if permitted under the terms of Section 3).

3. REQUIREMENTS

3.1 If a Contributor Distributes the Program in any form, then:

a) the Program must also be made available as Source Code, in accordance with section 3.2, and the Contributor must ac-company the Program with a statement that the Source Code for the Program is available under this Agreement, and informs Recipients how to obtain it in a reasonable manner on or through a medium customarily used for software exchange; and

b) the Contributor may Distribute the Program under a license different than this Agreement, provided that such license:

i) effectively disclaims on behalf of all other Contributors all warranties and conditions, express and implied, including war-ranties or conditions of title and non-infringement, and implied warranties or conditions of merchantability and fitness for a particular purpose;

ii) effectively excludes on behalf of all other Contributors all liability for damages, including direct, indirect, special, inciden-tal and consequential damages, such as lost profits;

iii) does not attempt to limit or alter the recipients’ rights in the Source Code under section 3.2; and

iv) requires any subsequent distribution of the Program by any party to be under a license that satisfies the requirements of this section 3.

3.2 When the Program is Distributed as Source Code:

a) it must be made available under this Agreement, or if the Program (i) is combined with other material in a separate file or files made available under a Secondary License, and (ii) the initial Contributor attached to the Source Code the notice de-scribed in Exhibit A of this Agreement, then the Program may be made available under the terms of such Secondary Licens-es, and

b) a copy of this Agreement must be included with each copy of the Program.

3.3 Contributors may not remove or alter any copyright, patent, trademark, attribution notices, disclaimers of warranty, or limitations of liability (“notices”) contained within the Program from any copy of the Program which they Distribute, provided that Contributors may add their own appropriate notices.

4. COMMERCIAL DISTRIBUTION

Commercial distributors of software may accept certain responsibilities with respect to end users, business partners and the like. While this license is intended to facilitate the commercial use of the Program, the Contributor who includes the Program in a commercial product offering should do so in a manner which does not create potential liability for other Contributors. Therefore, if a Contributor includes the Program in a commercial product offering, such Contributor (“Com-mercial Contributor”) hereby agrees to defend and indemnify every other Contributor (“Indemnified Contributor”) against any losses, damages and costs (collectively “Losses”) arising from claims, lawsuits and other legal actions brought by a third party against the Indemnified Contributor to the extent caused by the acts or omissions of such Commercial Contributor in connection with its distribution of the Program in a commercial product offering. The obligations in this section do not apply to any claims or Losses relating to any actual or alleged intellectual property infringement. In order to qualify, an Indemnified

Page 34: IVAS Sensor Device (Ethernet) · Protection grade IP67 (when cable connected) according to ISO 20653 Norm Sensors High-Bandwidth Accelerometer (1-axis, corresponds to X-axis in housing)

34

Contributor must: a) promptly notify the Commercial Contributor in writing of such claim, and b) allow the Commercial Con-tributor to control, and cooperate with the Commercial Contributor in, the defense and any related settlement negotiations. The Indemnified Contributor may participate in any such claim at its own expense.

For example, a Contributor might include the Program in a commercial product offering, Product X. That Contributor is then a Commercial Contributor. If that Commercial Contributor then makes performance claims, or offers warranties related to Product X, those performance claims and warranties are such Commercial Contributor’s responsibility alone. Under this section, the Commercial Contributor would have to defend claims against the other Contributors related to those perfor-mance claims and warranties, and if a court requires any other Contributor to pay any damages as a result, the Commercial Contributor must pay those damages.

5. NO WARRANTY

EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, AND TO THE EXTENT PERMITTED BY APPLICABLE LAW, THE PROGRAM IS PROVIDED ON AN “AS IS” BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED INCLUDING, WITHOUT LIMITATION, ANY WARRANTIES OR CONDITIONS OF TITLE, NON-INFRINGEMENT, MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Each Recipient is solely responsible for determining the appropriateness of using and distributing the Program and assumes all risks associated with its exercise of rights under this Agreement, including but not limited to the risks and costs of program errors, compliance with applicable laws, damage to or loss of data, programs or equipment, and unavailability or interruption of operations.

6. DISCLAIMER OF LIABILITY

EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, AND TO THE EXTENT PERMITTED BY APPLICABLE LAW, NEITHER RECIPIENT NOR ANY CONTRIBUTORS SHALL HAVE ANY LIABILITY FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING WITHOUT LIMITATION LOST PROFITS), HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OR DISTRIBUTION OF THE PROGRAM OR THE EXERCISE OF ANY RIGHTS GRANTED HEREUNDER, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.

7. GENERAL

If any provision of this Agreement is invalid or unenforceable under applicable law, it shall not affect the validity or enforce-ability of the remainder of the terms of this Agreement, and without further action by the parties hereto, such provision shall be reformed to the minimum extent necessary to make such provision valid and enforceable.

If Recipient institutes patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Program itself (excluding combinations of the Program with other software or hardware) infringes such Recipient’s pat-ent(s), then such Recipient’s rights granted under Section 2(b) shall terminate as of the date such litigation is filed.

All Recipient’s rights under this Agreement shall terminate if it fails to comply with any of the material terms or conditions of this Agreement and does not cure such failure in a reasonable period of time after becoming aware of such noncompliance. If all Recipient’s rights under this Agreement terminate, Recipient agrees to cease use and distribution of the Program as soon as reasonably practicable. However, Recipient’s obligations under this Agreement and any licenses granted by Recipient relating to the Program shall continue and survive.

Everyone is permitted to copy and distribute copies of this Agreement, but in order to avoid inconsistency the Agreement is copyrighted and may only be modified in the following manner. The Agreement Steward reserves the right to publish new versions (including revisions) of this Agreement from time to time. No one other than the Agreement Steward has the right to modify this Agreement. The Eclipse Foundation is the initial Agreement Steward. The Eclipse Foundation may assign the re-sponsibility to serve as the Agreement Steward to a suitable separate entity. Each new version of the Agreement will be given a distinguishing version number. The Program (including Contributions) may always be Distributed subject to the version of the Agreement under which it was received. In addition, after a new version of the Agreement is published, Contributor may elect to Distribute the Program (including its Contributions) under the new version.

Except as expressly stated in Sections 2(a) and 2(b) above, Recipient receives no rights or licenses to the intellectual property of any Contributor under this Agreement, whether expressly, by implication, estoppel or otherwise. All rights in the Program not expressly granted under this Agreement are reserved. Nothing in this Agreement is intended to be enforceable by any entity that is not a Contributor or Recipient. No third-party beneficiary rights are created under this Agreement.

Page 35: IVAS Sensor Device (Ethernet) · Protection grade IP67 (when cable connected) according to ISO 20653 Norm Sensors High-Bandwidth Accelerometer (1-axis, corresponds to X-axis in housing)

35

Exhibit A - Form of Secondary Licenses Notice

“This Source Code may also be made available under the following Secondary Licenses when the conditions for such avail-ability set forth in the Eclipse Public License, v. 2.0 are satisfied: {name license(s), version(s), and exceptions or additional permissions here}.”

Simply including a copy of this Agreement, including this Exhibit A is not sufficient to license the Source Code under Second-ary Licenses.

If it is not possible or desirable to put the notice in a particular file, then You may include the notice in a location (such as a LICENSE file in a relevant directory) where a recipient would be likely to look for such a notice.

You may add additional accurate notices of copyright ownership.

----------------------------------------------------------------------------------

Eclipse Paho Copyright (c) 2007, Eclipse Foundation, Inc. and its licensors.

All rights reserved.

Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:

* Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.

* Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaim-er in the documentation and/or other materials provided with the distribution.

* Neither the name of the Eclipse Foundation, Inc. nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS “AS IS” AND ANY EXPRESS OR IM-PLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE

ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDI-RECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PRO-CUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUD-ING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

----------------------------------------------------------------------------------

Mbed TLS

/* * Copyright (C) 2006-2017, ARM Limited, All Rights Reserved * SPDX-License-Identifier: Apache-2.0 * * Licensed under the Apache License, Version 2.0 (the “License”); you may * not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an “AS IS” BASIS, WITHOUT * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ ----------------------------------------------------------------------------------

Page 36: IVAS Sensor Device (Ethernet) · Protection grade IP67 (when cable connected) according to ISO 20653 Norm Sensors High-Bandwidth Accelerometer (1-axis, corresponds to X-axis in housing)

36

cJSON

Copyright (c) 2009-2017 Dave Gamble and cJSON contributors

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the “Software”), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABIL-ITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

----------------------------------------------------------------------------------

LwIP

* Copyright (c) 2001-2003 Swedish Institute of Computer Science. * All rights reserved. * * Redistribution and use in source and binary forms, with or without modification, * are permitted provided that the following conditions are met: * * 1. Redistributions of source code must retain the above copyright notice, * this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright notice, * this list of conditions and the following disclaimer in the documentation * and/or other materials provided with the distribution. * 3. The name of the author may not be used to endorse or promote products * derived from this software without specific prior written permission. * * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS’’ AND ANY EXPRESS OR IMPLIED * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT * SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT * OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY * OF SUCH DAMAGE. * * This file is part of the lwIP TCP/IP stack. * * Author: Adam Dunkels <[email protected]> * */

Page 37: IVAS Sensor Device (Ethernet) · Protection grade IP67 (when cable connected) according to ISO 20653 Norm Sensors High-Bandwidth Accelerometer (1-axis, corresponds to X-axis in housing)

Ludwig-Erhard-Straße 2 72760 Reutlingen Germany

[email protected]

Postfach 1342 72703 Reutlingen Germany

www.bosch-connectivity.com

Bosch Connected Devices and Solutions GmbH