IFM EIO404 - Bluetooth base station

EIO404 - Bluetooth base station IFM - Free user manual and instructions

Find the device manual for free EIO404 IFM in PDF.

📄 76 pages English EN Download 💬 AI Question
Notice IFM EIO404 - page 1
Pick your language and provide your email: we'll send you a specifically translated version.

User questions about EIO404 IFM

0 question about this device. Answer the ones you know or ask your own.

Ask a new question about this device

The email remains private: it is only used to notify you if someone responds to your question.

No questions yet. Be the first to ask one.

Download the instructions for your Bluetooth base station in PDF format for free! Find your manual EIO404 - IFM and take your electronic device back in hand. On this page are published all the documents necessary for the use of your device. EIO404 by IFM.

USER MANUAL EIO404 IFM

Operating instructions

Bluetooth® Mesh IoT base station

EIO404

Firmware: 1.55

Contents

1 Preliminary note 5

1.1 Legal and copyright information 5
1.2 Symbols used 5
1.3 Warnings.... 5

2 Safety instructions.... 6

2.1 Cybersecurity 6
2.2 Safety symbol on the device 7

3 Intended use 8

3.1 Foreseeable misuse 8
3.2 Topology of the Bluetooth Mesh network 8

4 Function 10

4.1 Visual indication 10
4.2 Ethernet interface 10
4.3 Bluetooth LE 10
4.4 Bluetooth Mesh.... 10
4.5 ifm IoT-Core 10

5 Installation.... 11

5.1 Overview.... 11
5.2 Mounting options.... 11

5.2.1 Mounting without accessories 11
5.2.2 Installation with E80335 angle bracket 11
5.2.3 Installation with E80336 mounting device 12
5.2.4 Installation with E80337 fixing bars 12

5.3 Mounting the device 12

6 Electrical connection.... 13

6.1 Overview.... 13
6.2 General notes on wiring 13
6.3 Voltage supply 13
6.4 Ethernet port 14

7 Operating and display elements 15

7.1 Overview.... 15
7.2 Status LED 15

8 Parameter setting 16

8.1 Notes on parameter setting.... 16

8.1.1 Parameter setting via Bluetooth interface 16
8.1.2 Parameter setting via Ethernet interface 16
8.1.3 Installing ifm moneo|blue.... 17
8.1.4 Installing ifm moneo|configure.... 17
8.1.5 Bluetooth password.... 17

8.2 ifm moneo|blue 19

8.2.1 Connecting to the device.... 19

8.2.1.1 Provisioning Bluetooth Mesh IO-Link adapters 19
8.2.1.2 Removing a Bluetooth Mesh IO-Link adapter from the network..... 20

8.2.2 Reading identification information 21

8.2.3 Configuring IP settings 21
8.2.4 Setting the Bluetooth Mesh network name 21
8.2.5 Setting the Bluetooth station name 21
8.2.6 Configuring the MQTT connection.... 21
8.2.7 Configuring the MQTT command channel.... 22
8.2.8 Firmware update.... 22

8.2.8.1 Updating the firmware of the connected adapters 23

8.3 ifm IoT Core REST API 24

8.3.1 ifm IoT Core: General information 24
8.3.1.1 Accessing the ifm IoT Core 24
8.3.2 Getting started 26
8.3.3 General functions 27

8.3.3.1 Example: Change a parameter value 27
8.3.3.2 Example: Read multiple parameter values simultaneously ..... 28
8.3.3.3 Example: Output a subtree 28
8.3.3.4 Example: Search the IoT Core 29

8.3.4 Ethernet: Configuring IP settings.... 30

8.3.5 Ethernet: Configuring password protection 30

8.3.5.1 Example: Set an Ethernet password 31
8.3.5.2 Example: Request with authentication 31
8.3.5.3 Example: Delete an Ethernet password 32

8.3.6 Bluetooth: Setting a station name 33

8.3.7 Bluetooth: Configuring password protection 33

8.3.7.1 Example: Change a Bluetooth password.... 33

8.3.8 Managing the Bluetooth mesh network 34

8.3.8.1 Example: Scan for available mesh adapters 34
8.3.8.2 Example: Register mesh adapter with mesh network 35
8.3.8.3 Example: Replace mesh adapter 35
8.3.8.4 Example: Deregister mesh adapter from mesh network 36

8.3.9 Managing the Bluetooth mesh IO-Link adapters 36

8.3.10 Configuring the timers.... 37

8.3.10.1 Example: Set the counting interval 37
8.3.10.2 Example: Start the counter 37
8.3.10.3 Example: Stop the counter 38

8.3.11 Using notifications.... 38

8.3.11.1 Event-triggered notifications 39
8.3.11.2 Time-triggered notifications.... 39
8.3.11.3 Example: Create a time-triggered notification 39
8.3.11.4 Example: Create an event-triggered notification 40
8.3.11.5 Example: Show active notifications 41
8.3.11.6 Example: Change a notification.... 41
8.3.11.7 Example: Delete a notification.... 42

8.3.12 Using MQTT 42

8.3.12.1 Configuring the MQTT connection.... 43
8.3.12.2 Configuring the MQTT command channel.... 44
8.3.12.3 Example: Configure and activate the MQTT command channel ..... 44
8.3.12.4 Example: Publish the device temperature to an MQTT broker ..... 46

8.3.13 Resetting, rebooting and localising the device.... 47
8.3.14 Reading and writing device information.... 47
8.3.15 Reading status and diagnostic information 48

8.4 ifm moneo|configure 49

8.4.1 Connecting to the device.... 49

8.4.1.1 Provisioning Bluetooth Mesh IO-Link adapters 49
8.4.1.2 Removing a Bluetooth Mesh IO-Link adapter from the mesh network.....50

8.4.2 Info: Reading identification information 51
8.4.3 IoT: Configuring IP settings.... 51
8.4.4 IoT: Configuring password protection 52

8.4.4.1 Setting an Ethernet password 52
8.4.4.2 Resetting an Ethernet password 52

8.4.5 Bluetooth LE: Setting station names 53

8.4.6 Bluetooth LE: Configuring password protection.... 53

8.4.6.1 Change a Bluetooth password 53

8.4.7 Bluetooth Mesh: Managing the network 54
8.4.8 MQTT: Configuring the MQTT connection.... 54
8.4.8.1 Controlling the MQTT connection 54

8.4.9 MQTT: Configuring the command channel 55

8.4.9.1 Controlling the MQTT command channel 56

8.4.10 Timer: Configuring the timers 56

8.4.10.1 Starting the timer.... 56
8.4.10.2 Stopping the timer....57

8.4.11 Firmware: Resetting, rebooting or localising the device.... 57

8.5 IoT-Core Visualizer 58

8.5.1 Starting the IoT Core Visualizer.... 58
8.5.2 Managing notifications 58

8.5.2.1 Create new notifications 58
8.5.2.2 Delete notifications 59

8.5.3 Accessing the IoT Core tree 60

8.5.3.1 Searching for elements of the IoT Core.... 60
8.5.3.2 Accessing elements of the IoT Core 61

8.5.4 Firmware update....62

9 Troubleshooting 64

10 Maintenance, repair and disposal 65

10.1 Firmware update....65

11 Appendix....66

11.1 ifm IoT Core 66

11.1.1 Profiles 66
11.1.2 Types 67
11.1.3 Services 68

11.1.3.1 Service: create_backup.... 68
11.1.3.2 Service: factoryreset 68
11.1.3.3 Service: get_credit 68
11.1.3.4 Service: getblobdata 68
11.1.3.5 Service: getdata 69
11.1.3.6 Service: getdatamulti.... 69
11.1.3.7 Service: getidentity 69
11.1.3.8 Service: getsubscriberlist 70
11.1.3.9 Service: gettree....70
11.1.3.10 Service: install....71
11.1.3.11 Service: install_backup 71
11.1.3.12 Service: querytree....71
11.1.3.13 Service: reboot 71
11.1.3.14 Service: register 72
11.1.3.15 Service: replace 72
11.1.3.16 Service: reset 72
11.1.3.17 Service: resetpassword.... 72
11.1.3.18 Service: reset_credits 72
11.1.3.19 Service: scan 73
11.1.3.20 Service: setblock....73
11.1.3.21 Service: setdata 73
11.1.3.22 Service: setdatamulti....73
11.1.3.23 Service: signal.... 74
11.1.3.24 Service: start....74
11.1.3.25 Service: start_stream_set 74
11.1.3.26 Service: stop 74
11.1.3.27 Service: stream_set 74
11.1.3.28 Service: subscribe.... 75
11.1.3.29 Service: unregister 75
11.1.3.30 Service: unsubscribe....75

1 Preliminary note

You will find instructions, technical data, approvals and further information using the QR code on the unit / packaging or at documentation.ifm.com.

© All rights reserved by ifm electronic gmbh. No part of these instructions may be reproduced and used without the consent of ifm electronic gmbh.

  • Bluetooth® is a registered trademark of Bluetooth SIG Inc.
  • Apple ® , the Apple logo, iPhone and iPod Touch are trademarks of Apple Inc., registered in the U. S. and other countries. The App Store is a service mark of Apple Inc.
  • iOS® operating system is a registered trademark of Apple Inc.
  • Google® is a registered trademark of Google LLC.
  • Android® operating system is a registered trademark of Google LLC.
    • Android, Google Play and the Google Play logo are trademarks of Google Inc.

1.2 Symbols used

√ Requirement

Instructions

Reaction, result

[...] Designation of keys, buttons or indications

→ Cross-reference

IFM EIO404 - Symbols used - 1

Important note

Non-compliance may result in malfunction or interference.

IFM EIO404 - Symbols used - 2

Information

Supplementary note

1.3 Warnings

Warnings indicate the possibility of personal injury and damage to property. This enables safe product handling. Warnings are graded as follows:

IFM EIO404 - Warnings - 1

WARNING

Warning of serious personal injury

▷ If the warning is not observed, fatal and serious injuries are possible.

IFM EIO404 - Warnings - 2

CAUTION

Warning of minor to moderate personal injury

▷ If the warning is not observed, minor to moderate injuries are possible.

ATTENTION

Warning of damage to property

▷ If the warning is not observed, damage to property is possible.

2 Safety instructions

- The unit described is a subcomponent for integration into a system.

  • The system architect is responsible for the safety of the system.
  • The system architect undertakes to perform a risk assessment and to create documentation in accordance with legal and normative requirements to be provided to the operator and user of the system. This documentation must contain all necessary information and safety instructions for the operator, the user and, if applicable, for any service personnel authorised by the architect of the system.

  • Read this document before setting up the product and keep it during the entire service life.

  • The product must be suitable for the corresponding applications and environmental conditions without any restrictions.
  • Only use the product for its intended purpose (→ Intended use).
  • If the operating instructions or the technical data are not adhered to, personal injury and/or damage to property may occur.
  • The manufacturer assumes no liability or warranty for any consequences caused by tampering with the product or incorrect use by the operator.
    • Installation, electrical connection, set-up, programming, configuration, operation and maintenance of the product must be carried out by personnel qualified and authorised for the respective activity.
  • Protect units and cables against damage.
  • Replace damaged units, otherwise the technical data and safety will be impaired.

2.1 Cybersecurity

Installation

The device is suitable for operation in a secure environment according to IEC 62443-1-1.

▶ Carry out a risk assessment of the system according to IEC 62443-1-1.

The device was designed for operation behind a firewall.

▶ Take measures to ensure physical security.

The device has no built-in protection against unauthorised access.

▶ Only operate the device in trustworthy networks.

Examples of trustworthy networks (according to IEC 62443-3-1, part 5):

- Internal company networks (Local Area Networks - LANs)

– Networks managed and secured by the IT department

• Industrial control systems (Industrial Control Systems - ICS)

– Networks for the control and monitoring of industrial processes

– ICS are isolated from other networks

- Point-to-point connection between the device and its direct communication partner

Bluetooth LE interface

The Bluetooth LE interface uses the JustWorks pairing method to establish cryptographically secured communication between the device and ifm moneo|blue.

▶ Only establish a connection between the device and ifm moneo|blue in a secure environment.

The device's Bluetooth LE interface is password-protected. When logging on to the device for the first time, the user must change the factory-set password.

▶ Only change the password in a secure environment.

▶ Choose a strong password in accordance with company policy.

Bluetooth Mesh interface

The Bluetooth Mesh communication between the network participants is cryptographically secured after successful provisioning of the devices in the Bluetooth Mesh network.

▶ Only provision the devices in a secure environment for the Bluetooth mesh network.

Operation

▶ Observe the security functions described in the product documentation and the recommendations for their use.

Maintenance

  • ▶ Back up system configuration and system data in accordance with your company’s change management processes.
    ▶ Regularly check whether software updates are available for the device.

Ensure the integrity and authenticity of the software update by taking the following organisational measures:

▶ Download the new firmware file to a secure laptop/PC.
▶ Calculate the SHA-256 hash value for the downloaded firmware file, www.ifm.com/cnt/product-security.
▶ Check whether the calculated hash value matches the SHA-256 hash value provided on the ifm website.
▶ Install the firmware file on the device via a secure connection, e.g. a point-to-point connection.

Decommissioning

▶ Ensure that no sensitive information can fall into unauthorised hands.
▶ Always reset the system settings to the factory settings before decommissioning the device.

2.2 Safety symbol on the device

IFM EIO404 - Safety symbol on the device - 1

Safety symbol on the device:

▶ Adhere to the operating instructions for the safe operation of the device.

3 Intended use

The device can be used:

  • As a central organisational node for setting up and managing a Bluetooth Mesh network with Bluetooth Mesh IO-Link adapters as participants
  • To configure the connected Bluetooth Mesh IO-Link adapters and optionally the connected IO-Link devices.
  • As a gateway between the higher-level IIoT level and the connected Bluetooth Mesh IO-Link adapters for the transmission of process data as well as status and diagnostic information from the connected IO-Link devices

Permitted use:

  • indoors
  • Only use the device within the limits of the technical data: → Technical data.

IFM EIO404 - Intended use - 1

Notes relevant for approval: Package insert of the device and documentation.ifm.com

3.1 Foreseeable misuse

The device is not suitable for environments with special requirements for mechanical stability (e.g. shock/vibration).

The device is not suitable for use in critical applications. The data is not transmitted in real time.

3.2 Topology of the Bluetooth Mesh network

Recommended topology:

IFM EIO404 - Topology of the Bluetooth Mesh network - 1

Fig. 1: Positioning the EIO404 in the centre of the Bluetooth Mesh network

▶ Position the ▷ Bluetooth Mesh IoT base station in the centre of the Bluetooth Mesh network if possible.
▷ Network utilisation is reduced.
▷ The stability of the communication is increased compared to positioning the base station at the edge of the Bluetooth Mesh network.

Non-recommended topology:

IFM EIO404 - Topology of the Bluetooth Mesh network - 2

Fig. 2: Positioning the EIO404 at the edge of the Bluetooth Mesh network

Positioning the Bluetooth Mesh IoT base station at the edge of the Bluetooth mesh network means that all the data must be transmitted via one or a few Bluetooth mesh IO-Link adapters. This leads to high utilisation with these adapters and can have a negative impact on the stability and latency of the entire Bluetooth mesh network.

▶ Avoid positioning the Bluetooth Mesh IoT base station at the edge of the Bluetooth Mesh network.
▶ If central positioning is not possible, place additional Bluetooth Mesh IO-Link adapters as relay nodes in the Bluetooth Mesh network.

4 Function

4.1 Visual indication

The device has a status LED for displaying status information, warnings and error states.

4.2 Ethernet interface

The device has an Ethernet interface.

• parameter setting of the device
• Parameter setting of the Bluetooth Mesh network
- Ethernet communication to the IT level (monitoring)

4.3 Bluetooth LE

The device supports communication via Bluetooth Low Energy (LE). The following functions can be performed via Bluetooth LE:

• Parameter setting of the base station
• Parameter setting of the Bluetooth Mesh network
• Parameter setting of the Ethernet interface
• Parameter setting of the MQTT connection
- Parameter setting of the connected Bluetooth Mesh IO-Link adapters incl. connected IO-Link devices

4.4 Bluetooth Mesh

The device supports the Bluetooth Mesh protocol.

Together with Bluetooth Mesh IO-Link adapters EIO344, the device can create and manage a Bluetooth Mesh network. Once the Bluetooth Mesh network has been set up, the device automatically establishes the connection to the Bluetooth Mesh IO-Link adapter (EIO344).

Up to 50 Bluetooth Mesh IO-Link adapters can be connected to the Bluetooth Mesh IoT base station.

The device offers the following functions in a Bluetooth Mesh network:

• Parameter setting of the adapter
• Parameter setting of the connected IO-Link device
• Monitoring of process data (interval: 1 s ... 24 h)

IFM EIO404 - Bluetooth Mesh - 1

Detailed information on the Bluetooth Mesh IO-Link adapter EIO344: documentation.ifm.com

4.5 ifm IoT-Core

The device has the ifm IoT-Core. The ifm IoT-Core represents the functionality of the device. The functionality consists of a set of data, services and events. The elements of the ifm IoT-Core are arranged in a JSON object in a hierarchical tree structure. The ifm IoT-Core makes these elements available to the outside world via standard interfaces (e.g. HTTP). This allows the user and other devices to access data (parameters, process data), events and functions (services) of the device.

5 Installation

5.1 Overview

IFM EIO404 - Overview - 1

1: Threaded holes
2: Power supply and Ethernet connections

IFM EIO404 - Overview - 2

The connections for the power supply and Ethernet can each be rotated by 270° .

5.2 Mounting options

Optional accessories are available for mounting: documentation.ifm.com

IFM EIO404 - Mounting options - 1

The screws required for installation are not included with the device.

5.2.1 Mounting without accessories

The device can be mounted without mounting accessories.

▶ Use a flat mounting surface for installation.
▶ Use the 4 threaded holes on the back of the device for mounting, Overview (→ □ 11).

5.2.2 Installation with E80335 angle bracket

The angle bracket is used for lateral mounting of the unit.

IFM EIO404 - Installation with E80335 angle bracket - 1

IFM EIO404 - Installation with E80335 angle bracket - 2

5.2.3 Installation with E80336 mounting device

The mounting device is used to mount the unit to a clamp.

IFM EIO404 - Installation with E80336 mounting device - 1

IFM EIO404 - Installation with E80336 mounting device - 2

5.2.4 Installation with E80337 fixing bars

Fasten the unit at the installation location using fixing screws.

IFM EIO404 - Installation with E80337 fixing bars - 1

IFM EIO404 - Installation with E80337 fixing bars - 2

5.3 Mounting the device

IFM EIO404 - Mounting the device - 1

▶ Disconnect the power of the machine before installation.

▶ Install the device according to the option of your choice.
▶ Only use M4 screws to fasten the housing. Max. tightening torque: 0.8 Nm.

6 Electrical connection

IFM EIO404 - Electrical connection - 1

The unit must be connected by a qualified electrician.

Observe the national and international regulations for the installation of electrical equipment.

Voltage supply according to SELV, PELV.

▶ Disconnect power.

6.1 Overview

IFM EIO404 - Overview - 1

1: Ethernet port
2: Voltage supply

6.2 General notes on wiring

The threaded connections in the device correspond to the M12 standard. To ensure compliance with the specified protection rating, only cables that comply with this standard may be used. In the case of self-assembled cables, the system manufacturer is responsible for the protection rating.

▶ Use connectors with gold-plated contacts.
▶ During installation, place the connectors vertically so that the coupling nut will not damage the thread.
▶ Before connecting the connector, check that there is an undamaged O-ring in the socket.
▶ Observe the coding of the connectors during installation.
▶ Provide all outgoing cables with suitable strain relief after a maximum of 200 mm.

For the cULus area of application:

▶ Only use UL-certified cables of category CYJV 2/7/8 with suitable technical data to connect the device.

6.3 Voltage supply

The device is connected to the voltage supply via the port.

IFM EIO404 - Voltage supply - 1

CAUTION

The port has no overcurrent protection.

▷ Risk of fire
▶ Protect circuits.

Wiring:

IFM EIO404 - Voltage supply - 2

1: L+
2: n.c.
3: L-
4: n.c.
5: n.c.

▶ Connect the port to the voltage supply.
▶ Use an M12 connector for the connection.
▶ Tighten the coupling nut with 0.6...1.5 Nm.

6.4 Ethernet port

The device is connected to the IT network via the port.

• Maximum cable length 20 m

IFM EIO404 - Ethernet port - 1

The device must not be externally supplied via the M12 port.

Wiring:

IFM EIO404 - Ethernet port - 2

1: TX+
2: RX+
3: TX-
4: RX-
5: n.c.

▶ Connect the port to the IT network directly or via a network coupling element (e.g. switch).
▶ For connection, use an M12 connector (minimum protection rating: IP 67).
▶ Tighten the coupling nut with 0.6...1.5 Nm.

7 Operating and display elements

7.1 Overview

IFM EIO404 - Overview - 1

1: Status LED

7.2 Status LED

LEDDescriptionColourStateTypeDescription
Status--OffErrorVoltage too low
Operation indicationgreenOnNormal operationDevice functions reliably
Flashing (double flashing)WarningOptical identification
flashes (200 ms on, 800 ms off)NoteFirmware updateNOTE! Wait until the update process is complete.
Interference displayredOnDevice replacementHardware failure
Flashes (1 Hz)ErrorTemperature of the circuit board outside the tolerance range
Flashes (1 Hz)NoteNo Ethernet connection
Flashes (1 Hz)WarningNo Bluetooth Mesh connection
Bluetooth statusblueOnNoteBluetooth active
Flashes (double flash, once)NoteMesh provisioning successful (following device ID message)

8 Parameter setting

The parameters of this unit can be set via 2 interfaces. It is possible to read information or make settings via Ethernet or Bluetooth. Assigned information and changes are possible for each interface.

  1. For Ethernet, connect the M12 connector to a network using an M12 Ethernet cable → (Accessories).
  2. The connection is established with an app via Bluetooth.

IFM EIO404 - Parameter setting - 1

For information on suitable parameter setting software see io-link.ifm.

8.1 Notes on parameter setting

8.1.1 Parameter setting via Bluetooth interface

To configure the Bluetooth Mesh IoT base station via the Bluetooth interface:

IFM EIO404 - Parameter setting via Bluetooth interface - 1

▶ Connect the device to the voltage supply.
▶ Install ifm moneo|blue, Installing ifm moneo|blue (→ ☐ 17).

8.1.2 Parameter setting via Ethernet interface

Available options for configuring the device via the Ethernet interface:

  • ifm IoT Core REST API: ifm IoT Core REST API (→ 24)
  • ifm moneo|configure: ifm moneo|configure (→ 49)
  • ifm IoT Core Visualizer: IoT-Core Visualizer (→ 58)

To configure the Bluetooth Mesh IoT base station via the Ethernet interface:

IFM EIO404 - Parameter setting via Ethernet interface - 1

▶ Connect the device to the PC/laptop via the Ethernet port.
▶ Connect the device to the voltage supply.
▶ Optional: Install ifm moneo|configure, Installing ifm moneo|configure (→ 17).

8.1.3 Installing ifm moneo|blue

ifm electronic provides the ifm moneo|blue app for accessing the device via the Bluetooth interface. The app is available in the Apple App Store and the Google Play Store.

IFM EIO404 - Installing ifm moneo|blue - 1

IFM EIO404 - Installing ifm moneo|blue - 2

To install ifm moneo|blue:

▶ Scan the QR code using your mobile device.
▷ The app page in the App Store or Google PlayStore opens.
▶ Install ifm moneo|blue.
▷ ifm monoe|blue is installed on the mobile device.

8.1.4 Installing ifm moneo|configure

IFM EIO404 - Installing ifm moneo|configure - 1

Information on ifm moneo|configure: ifm.com/cnt/moneo

▶ Download ifm moneo|configure.
▶ Start the laptop/PC.
▶ Log in with administrator rights.
▶ Install and licence ifm moneo|configure (→ installation instructions ifm moneo).
▷ ifm moneo|configure is installed.

8.1.5 Bluetooth password

Access to the device via Bluetooth LE is password-protected. ▷ The password protection cannot be deactivated.

The factory-set Bluetooth password consists of the last 6 digits of the device's serial number (e.g. 100000138488).

The serial number is printed on the packaging and on the device.

IFM EIO404 - Bluetooth password - 1

Fig. 3: Indication of the serial number: on the device (left) and on the packaging (right)

When accessing the device via ifm moneo|blue for the first time, the user is prompted to change the factory-set password.

▶ Choose a strong password in accordance with company policy.

The Bluetooth password has no influence on access to the device via ifm moneo and the IoT Core interface.

8.2 ifm moneo|blue

8.2.1 Connecting to the device

▶ During initial set-up, change the factory-set password ( → Bluetooth password ☐ 17) of the Bluetooth interface.

Requirements:

√ Bluetooth is activated on the mobile device.
√ ifm moneo|blue is installed on the mobile device, Installing ifm moneo|blue (→ 17).
√ The device is close to the mobile device (distance: max. 15 m).
√ The device is connected and ready for operation

▶ Start ifm monoe|blue.

IFM EIO404 - Connecting to the device - 1

IFM EIO404 - Connecting to the device - 2

IFM EIO404 - Connecting to the device - 3

▶ Click on [Scan for Devices].
▷ ifm moneo|blue scans the environment for available devices.
▷ ifm moneo|blue detects all available devices.
▶ Select the Bluetooth Mesh IoT base station and pair it with the mobile device.
▷ Overview view appears.
▷ Overview view shows devices in the Bluetooth Mesh network.
▶ Click on the Bluetooth Mesh IoT base station icon.
▷ The parameter value editor for the device appears.
▷ The unit can be configured.

To add a Bluetooth Mesh IO-Link adapter to a Bluetooth Mesh network, the adapter must be provisioned on the Bluetooth Mesh IoT base station.

Requirements:

√ ifm moneo|blue is installed on the mobile device, Installing ifm moneo|blue (→ 17).

√ Bluetooth is activated on the mobile device.
√ Bluetooth Mesh IoT base station EIO404 is started and ready for operation.
√ Bluetooth Mesh IO-Link adapter EIO344 is started and ready for operation.
√ The device is close to the mobile device (distance: max. 15 m).
√ ifm moneo|blue has been launched.

▶ Pair Bluetooth Mesh IoT base station with mobile device, Connecting to the device ( → 19).

IFM EIO404 - Provisioning Bluetooth Mesh IO-Link adapters - 1

IFM EIO404 - Provisioning Bluetooth Mesh IO-Link adapters - 2

IFM EIO404 - Provisioning Bluetooth Mesh IO-Link adapters - 3

▶ In the header: Click on +.
▶ Bluetooth Mesh IoT base station scans the environment for available adapters.
▷ All available adapters are displayed.

▶ Select the Bluetooth Mesh IO-Link adapter.

▷ Click on [Provision].

▷ The Bluetooth Mesh IoT base station integrates the adapter into the Bluetooth Mesh network.

▷ ifm moneo|blue has access to the Bluetooth Mesh IO-Link adapter.

▷ If connected: ifm moneo|blue has access to the connected IO-Link device.

After provisioning, the Bluetooth Mesh IoT base station independently establishes the connection to all provisioned Bluetooth Mesh IO-Link adapters. The connection is established directly or via other Bluetooth Mesh IO-Link adapters.

▷ The Bluetooth Mesh IO-Link adapters send the process data to the Bluetooth Mesh IoT base station cyclically at a defined interval. The process data can be read out there and used for system monitoring.

To remove a Bluetooth Mesh IO-Link adapter from the Bluetooth Mesh network:

▶ Reset the Bluetooth Mesh IO-Link adapter (Back-to-Box), → operating instructions EIO344.
▷ The Bluetooth Mesh IO-Link adapter is removed from the Bluetooth Mesh network.
▷ The credit used for provisioning is released.

8.2.2 Reading identification information

Available information:

NameDescriptionValue rangeAccess
[Serial number]Serial numberE.g. 000022503648ro 1
Firmware versionFirmware versionE.g. V1.42ro 1
[Bootloader revision]Bootloader versionE.g. V0.07ro 1
[EEPROM revision]EEPROM versionE.g. V0.03ro 1
[Mac-Address]Bluetooth MAC addressE.g. B4-E3-F9-C7-54-43ro 1
[Hardware Revision]Hardware versionE.g. AAro 1
[Vendor]Vendorifm electronic gmbhro 1
[Produkname]Article numberEIO404ro 1

1 Read only

8.2.3 Configuring IP settings

To configure the IP settings of the Ethernet port:

Available parameters:

NameDescriptionValue rangeAccess
[IP address]IP address of the Ethernet interfacee.g. 192.168.0.100 rw1
[Subnet Mask]Subnet mask of the Ethernet networke.g. 255.255.255.0 rw1
[Default Gateway]IP address of the network gatewaye.g. 192.168.0.1 rw1
DHCPEnable / disable the DHCP client of the deviceStatic IP: IP settings are set by the user (default)DHCP: IP settings are set by DHCP server in the network. rw1

1 Read and write

8.2.4 Setting the Bluetooth Mesh network name

Available parameters:

NameDescriptionValue rangeAccess
[Mesh Network Name]Name of the Bluetooth Mesh network (max. 32 characters)E.g. Plant2
Hall3
r w 1

1 Read and write

8.2.5 Setting the Bluetooth station name

Available parameters:

NameDescriptionValue rangeAccess
[Bluetooth LE name]Name of the device in the Bluetooth LE network (max. 22 characters)E.g. BaseStation r w 1

1 Read and write

8.2.6 Configuring the MQTT connection

Available parameters:

NameDescriptionValue rangeAccess
[MQTT Version]MQTT versionE.g. 3.1.1ro 1
[Keep Alive]Max. time between 2 successive MQTT protocol packets (value in s)0: 0 s...10: 10 s...60: 60 srw 2

1 Read only

2 Read and write

8.2.7 Configuring the MQTT command channel

Make sure that the MQTT broker can be reached and that the selected port of the MQTT broker is released for data transfer.

The wildcards “+” and “#” are not supported in topic names.

Available parameters:

NameDescriptionValue rangeAccess
[Broker IP]IP address of the MQTT brokere.g. 3.69.1.9 rw1
[Broker Port]Port number of the MQTT brokerE.g. 1883 rw1
[Topic]Name of the MQTT command topicE.g. reqTopic rw1
[Antwort-Topic]Name of the MQTT response topicE.g. resp
Topic
rw1
[Username]User nameE.g. user1 rw1

1 Read and write

8.2.8 Firmware update

ifm moneo|blue offers the option of updating the firmware of the Bluetooth Mesh IoT base station.

New firmware available on the product detail page of the device: documentation.ifm.com

The firmware update must not be interrupted.

▶ Do not restart the device during the update process.
▶ Wait until the update is complete.

Requirements:

√ Firmware file of the Bluetooth Mesh IoT base station is stored in the file system of the mobile device.
√ ifm moneo|blue has been launched.
▶ Establish a connection to the Bluetooth Mesh IoT base station.
▶ Call up the editor view of the Bluetooth Mesh IoT base station.
▶ In the header: Click on ↑.

▷ A dialogue window appears.

▶ Select the [Update base station] option.

▶ In the [Select update file]: Click on [Browse].

▶ Select new firmware file.

▷ Menu page shows the selected firmware file.

▶ Click on [Import].

▷ Firmware file is transferred to the device.
▷ A message appears to install the new firmware and restart the device.

▶ Click on [OK] to acknowledge the prompt.

▷ The firmware of the Bluetooth Mesh IoT base station is updated.

▷ Unit reboots

▷ The new firmware is installed on the Bluetooth Mesh IoT base station.

8.2.8.1 Updating the firmware of the connected adapters

ifm moneo|blue offers the option of updating the firmware of the connected Bluetooth Mesh IO-Link adapters via the Bluetooth Mesh IoT base station.

IFM EIO404 - Updating the firmware of the connected adapters - 1

New firmware available on the product detail page of the device: documentation.ifm.com

IFM EIO404 - Updating the firmware of the connected adapters - 2

For information on updating the firmware of a single Bluetooth Mesh IO-Link adapter: Operating instructions EIO344

IFM EIO404 - Updating the firmware of the connected adapters - 3

The firmware update must not be interrupted.

▶ Do not restart the device during the update process.
▶ Wait until the update is complete.

Requirements:

√ The firmware file of the Bluetooth Mesh IO-Link adapter is saved in the file system of the mobile device.
√ ifm moneo|blue has been launched.
▶ Establish a connection to the Bluetooth Mesh IoT base station.
▶ Call up the editor view of the Bluetooth Mesh IoT base station.
▶ In the header: Click on ↑.

▷ A dialogue window appears.

▶ Select option [Update all connected mesh adapters].

▶ In the [Select update file] area: Click on [Browse].

▶ Select new firmware file.

▷ The menu page shows the selected firmware file.

▶ Click on [Import].

▷ The firmware file is transferred to the Bluetooth Mesh IoT base station.
▷ A message appears that new firmware is available for the connected adapters.

▶ Click on [Update].

▷ The new firmware is transferred to all connected Bluetooth Mesh IO-Link adapters.
▷ The firmware is updated.
▷ All adapters restart.

▷ New firmware is installed on all connected Bluetooth Mesh IO-Link adapters.

8.3 ifm IoT Core REST API

8.3.1 ifm IoT Core: General information

The device has the ifm IoT-Core. The ifm IoT-Core represents the functionality of the device. The functionality consists of a set of data, services and events. The elements of the ifm IoT-Core are arranged in a JSON object in a hierarchical tree structure. The ifm IoT-Core makes these elements available to the outside world via standard interfaces (e.g. HTTP). This allows the user and other devices to access data (parameters, process data), events and functions (services) of the device.

8.3.1.1 Accessing the ifm IoT Core

Any element of the ifm IoT Core is accessed via its address (e.g. root/port1/pin2). The address is composed of the path leading to the element (root/port1) and the identifier of the element (pin2).

▷ The user can access the ifm IoT Core via HTTP requests. The following methods are supported.

GET method

Access: reading

Syntax of the request:

http://ip/data_point/service 
ParameterDescription
ipIP address of the IoT interface
data_pointData point which is to be accessed
serviceService

Syntax of the response:

{
    "cid": id,
    "data": {"value":"resp_data"},
    "adr": "data_point/service",
    "code": diag_code
} 
FieldParameterDescription
cididCorrelation ID for the assignment of request and response
dataresp_dataValue of the data point; depending on the data type of the data point
adrdata_pointData point accessed
serviceService that accessed the data point
codediag_codeDiagnostic codes

Example: GET request

- Request (via browser):

http://192.168.0.79/deviceinfo/productname/getdata 

- Response:

{
    "cid": -1,
    "data": {"value":"EI0404"},
    "adr": "/deviceinfo/productname/getdata",
    "code": 200
} 

POST method

Access: reading, writing

Syntax of the request:

{
    "code": "code_id",
    "cid": id,
    "adr": "data_point/service",
    "data": {req_data},
    "auth": {"user": "usr_id", "passwd": "password"}
} 
FieldParameterDescription
codecode_idService classrequest: requesttransaction: transactionevent: event
cididCorrelation ID for the assignment in pairs of request and response; identifier freely selectable by the user
adrdata_pointData point which is to be accessed
serviceService to access the data point
data 1 req_dataData sent to the ifm IoT Core (e.g. new values); syntax depending on the service
auth 2 usr_idUser name (BASE64-encoded); default: administrator
passwordPassword (BASE64-encoded)

1 optional; only required for services that send data to the ifm IoT Core (e.g. setdata)
2 optional; only required if security mode is activated

Syntax of the response:

{
    "cid": id,
    "data": {resp_data},
    "adr": "data_point/service",
    "code": diag_code
} 
FieldParameterDescription
cididCorrelation ID for the assignment of request and response (→ Request)
data1resp_dataValues returned by the ifm IoT Core; syntax depending on the service
adrdata_pointData point accessed
serviceService that accessed the data point
codediag_codeDiagnostic code

1 optional; only available for services that receive data from the ifm IoT Core (e.g. getdata)

Example: POST request

Request:

{
    "code": "request",
    "cid": 1,
    "adr": "/deviceinfo/devicename/getdata"
} 

Response:

{
    "cid": 1,
    "data": {
    "value": "New Base"
    },
    "adr": "/deviceinfo/devicename/getdata",
    "code": 200
} 

Diagnostic codes

CodeTextDescription
200OKRequest successfully processed
400Bad requestInvalid request
403ForbiddenForbidden request
404Element not found:Specified address does not exist
408Request timeoutTimeout of the response to the request
404Element not found:Requested service does not exist
413Request payload too largeUser data of the request too large
414Request URL too longRequest URL too long
416Request range not satisfiableRequested value range not within the allowed limits
422Invalid payload. Invalid:Transferred data / user data are invalid
423The service is busyService is currently blocked, disabled or busy
424Failed dependency:Execution of the service currently not allowed (check dependencies)
429Too many requestsToo many requests
500Internal server errorInternal fault
501Not implementedNot implemented
502Remote service failed with code:Request to the remote device failed with error message
503Service unavailableService not available
507Insufficient storageMemory of the unit not sufficient
550Service execution failedExecution of the service has failed
901Already existsElement or link to the element already exists at the same position in the IoT Core tree

8.3.2 Getting started

The ifm IoT Core contains elements intended solely for the internal use by ifm. These elements are not output in the query with the gettree service. The elements are protected against unauthorised access.

To output the complete tree structure of the device's IoT core, send the following POST request to the ifm IoT core:

{
    "code":"request",
    "cid":-1,
    "adr":"/gettree"
} 

The ifm IoT Core returns the complete tree structure as a structured JSON object.

▶ Identify all substructures and the data points contained therein in the tree structure of the JSON object.
▶ Identify the applicable services for the access to substructures and the data points contained therein.

8.3.3 General functions

The device has the type “device” ( → Types ☐ 67). The following services can be applied to the root element of the device tree:

ServiceDescription
../gettreeProvide the complete tree or subtree of the device description (JSON)
../getidentityRead identification information of the unit
../getdatamultiRead multiple elements sequentially
../getelementinfoRead detailed information of an element
../getsubscriberlistProvide a list of all active notification subscriptions
../querytreeSearch device description for specific elements

The following services can be applied to elements of the type data depending on the configured access rights:

ServiceDescription
../getdataRead the value of the element
../setdataWrite the value of the element

8.3.3.1 Example: Change a parameter value

Task: The parameter servicename of the unit is to be given the value "New Base Station".

Solution: Write the new value of the element deviceinfo/devicename with the setdata service.

Request:

{
    "code":"request",
    "cid":4711,
    "adr":"/deviceinfo/devicename/setdata",
    "data":{
    "newvalue":"New Base Station",
    }
} 

Response:

{
    "cid":4711,
    "adr":"/deviceinfo/devicename/setdata",
    "code":200
} 

8.3.3.2 Example: Read multiple parameter values simultaneously

Task: The following current values of the unit are to be read: temperature, serial number

Solution: Read the current parameter values using the service getdatamulti (data point temperature: /processdatabasestation/temperature/cpu; data point serial number: /deviceinfo/serialnumber).

Request:

{
    "code":"request",
    "cid":4711,
    "adr":"/getdatamulti",
    "data":{
    "datatosend":[
    "/processdatabasestation/temperature/cpu",
    "/deviceinfo/serialnumber"
    ]
    }
} 

Response:

{
    "cid":4711,
    "data":{
    "processdatabasestation/temperature/cpu":{
    "code":200,
    "data":32
    },
    "deviceinfo/serialnumber":{
    "code":200,
    "data":"000174210147"
    }
},
"adr":"getdatamulti",
"code":200
} 

8.3.3.3 Example: Output a subtree

Task: Output all direct sub-elements of the meshnetwork node.

Solution: Use the service gettree to output the required subtree (root node: meshnetwork, sub-levels to be shown: 1).

Request:

{
    "code": "request",
    "cid": 1,
    "adr": "/gettree",
    "data": {
    "adr": "/meshnetwork/",
    "level": 1
    }
} 

Response:

{
    "cid": 1,
    "data": {
    "identifier": "meshnetwork",
    "type": "structure",
    "subs": [
    {
    "identifier": "provisioning",
    "type": "structure",
    "profiles": [
    "wirelessprovisioning"
    ]
    },
    {
    "identifier": "mesh_adapter[1]",
    "type": "subdevice",
    "profiles": []
    },
    {
    "identifier": "adapter_update",
    "type": "structure",
    "profiles": [
    "software",
    "software/uploadablesoftware"
    ]
    }
    ]
},
"adr": "/gettree",
"code": 200
} 

8.3.3.4 Example: Search the IoT Core

Task: All elements with the profile datarequired are to be listed.

Solution: Use the querytree service to search the IoT Core of the unit with the parameter datarequired (profile).

Request:

{
    "code": "request",
    "cid": 1,
    "adr": "/querytree",
    "data": {
    "profile": "datarequired"
    }
} 

Response:

{
    "cid": 1,
    "data": {
    "adrList":[
    "00-02-01-42-DC-9D/iotsetup/ethernet/network/ipaddress",
    "00-02-01-42-DC-9D/iotsetup/ethernet/network/subnetmask",
    "00-02-01-42-DC-9D/iotsetup/ethernet/network/dhcp",
    "00-02-01-42-DC-9D/iotsetup/ethernet/network/ipdefaultgateway"
    ]
},
"adr": "/querytree",
"code": 200
} 

8.3.4 Ethernet: Configuring IP settings

Substructure: iotsetup/ethernet/network

IFM EIO404 - Ethernet: Configuring IP settings - 1

▶ Change the data points of the substructure network only blockwise using the setblock service!

Available data points:

NameDescriptionValue rangeAccess
../dhcpConfiguration method for IP settings of the interface0: Static IP: static addressing (default)1: DHCP: addressing via DHCP (Dynamic Host Configuration protocol) rw1
../ipaddressIP address of the interfacee.g. 192.168.0.79 (default) rw12
../subnetmaskSubnet mask of the network segmente.g. 255.255.255.0 (default) rw12
../ipdefaultgatewayIP address of the network gatewaye.g. 192.168.0.100 (default) rw12
../macaddressMAC address of the interfacee.g. 00-02-01-42-DC-9D ro3

1 Read and write

2 can only be changed if DHCP is disabled

3 Read only

Applicable services:

NameDescription
../setblockWrite all data points of the substructure blockwise

8.3.5 Ethernet: Configuring password protection

Password protection is used to protect the device against unauthorised access via the Ethernet interface.

Once the password has been set, the user must also submit the “auth” field with a valid user name (“user”) and password (“passwd”) for authentication of the POST request.

The user name is administrator. The user name is fixed and cannot be changed.

The user name and the password are represented as Base64-encoded strings: Example: Request with authentication ( → ☐ 31)

With password protection enabled, the following requests can also be executed without authentication:

  • getidentity
    • deviceinfo/vendor/getdata
    • deviceinfo/productcode/getdata

Substructure: iotsetup/ethernet/security

Available data points:

NameDescriptionValue rangeAccess
../passwordSet password for authentication (Base64-encoded string)Min. length: 6
Max. length: 32
E.g. ZXRoX3
Bhc3N3b3Jk
wo 1

1 write only

Valid character set for the password before Base64 encoding: UTF-8 without control characters

Applicable services:

NameDescription
../resetpasswordDelete an Ethernet password

8.3.5.1 Example: Set an Ethernet password

Task: The Ethernet connection is to be protected with a password (password: eth_password)

Solution: Using the setdata service, write the password eth_password (Base64-encoded: ZXRoX3
Bhc3N3b3Jk) to the data point iotsetup/ethernet/security/password.

Request:

{
    "code": "request",
    "cid": 1,
    "adr": "/iotsetup/ethernet/security/password/setdata",
    "data": {
    "newvalue": "ZXRoX3
Bhc3N3b3Jk" } }

Response:

{
    "code": "request",
    "cid": 1,
    "adr": "/iotsetup/ethernet/security/password/setdata",
    "code": 200
} 

The Ethernet interface is password protected. The getidentity ( → Service: getidentity ☐ 69) service shows that the password is set.

8.3.5.2 Example: Request with authentication

Task: The temperature of the device is to be read. The password is set (password: eth_password).

Solution: Using the getdata service, read the data point processdatabasestation/temperature/cpu. The user name and the password are provided as Base64-encoded strings:

  • User name:
  • administrator: YWRtaW5pc3RyYXRvcg==
  • Password:
  • eth_password: ZXRoX3
    Bhc3N3b3Jk

Request:

{
    "code": "request",
    "cid": -1,
    "adr": "/processdatabasestation/temperature/cpu/getdata",
    "auth": {
    "user": "YWRtaW5pc3RyYXRvcg==",
    "passwd": "ZXRoX3
Bhc3N3b3Jk" } }

Response:

{
    "cid": -1,
    "adr": "/processdatabasestation/temperature/cpu/getdata",
    "data": {
    "value": 37
    },
    "code": 200
} 

8.3.5.3 Example: Delete an Ethernet password

Task: Access to the device via the Ethernet interface is password-protected (password: eth_password). The password is to be deleted.

Solution: Using the resetpassword service, write to the iotesetup/ethernet/security substructure. The user name and password are provided as Base64-encoded strings.

  • User name:
  • administrator: YWRtaW5pc3RyYXRvcg==
  • Password:
  • eth_password: ZXRoX3
    Bhc3N3b3Jk

Request:

{
    "code": "request",
    "cid": 1,
    "adr": "/iotsetup/ethernet/security/resetpassword",
    "auth": {
    "user": "YWRtaW5pc3RyYXRvcg==",
    "passwd": "ZXRoX3
Bhc3N3b3Jk" } }

Response:

{
    "cid": 1,
    "adr": "/iotsetup/ethernet/security/resetpassword",
    "code": 200
} 

8.3.6 Bluetooth: Setting a station name

Substructure: iotsetup/bluetooth_le

Available data points:

NameDescriptionValue rangeAccess
../bluetooth_nameStation name of the unit (string with max. 22 characters)e.g. eio404_baserw 1

1 Read and write

8.3.7 Bluetooth: Configuring password protection

Take note of the information regarding the Bluetooth password: Bluetooth password ( → ☐ 17)

Substructure: iotsetup/bluetooth_le/security

Available data points:

NameDescriptionValue rangeAccess
../security/passwordSet a password to authenticate with the Bluetooth LE interface (Base64-encoded string)Min. length: 6
Max. length: 32NOTE! The password has no influence on the mesh functionality.
e.g. YmxIX3
Bhc3N3b3Jk
wo 1
../security/password_stateCurrent status of the Bluetooth password0: Default Password – factory-set password (last 6 digits of the serial number)1: User specific password – user-specific passwordro 2

1 write only
2 Read only

Valid character set for the password before Base64 encoding: UTF-8 without control characters

Applicable services:

NameDescription
../resetpasswordReset password to factory settings

8.3.7.1 Example: Change a Bluetooth password

Task: The Bluetooth password should be set to the value ble_password.

Solution: Using the setdata service, write the password ble_password (Base64-encoded:

Ymx1X3
Bhc3N3b3Jk ) to the data point /iotsetup/bluetooth_le/security/password.

Request:

{
    "code": "request",
    "cid": 1,
    "adr": "iotsetup/bluetooth_le/security/password/setdata",
    "data": {
    "newvalue": "Ymx1X3
Bhc3N3b3Jk" } }

Response:

{
    "cid":1,
    "adr":"iotsetup/bluetooth_le/security/password/setdata",
    "code":200
} 

8.3.8 Managing the Bluetooth mesh network

Substructure: meshnetwork/provisioning

Available data points:

NameDescriptionValue rangeAccess
../max_nodesMax. number of nodes50ro 1
../current_nodesCurrent number of nodes in the mesh network0...50ro 1
../valid_credits_countCurrent number of Bluetooth mesh credits used0...65535ro 1

1 Read only

Applicable services:

NameDescription
../scanScan for available nodes in the vicinity of the unit
../registerRegister a node with the mesh network
../unregisterUnregister a node from the mesh network
../replaceReplace a node of the mesh network
../get_creditRequest credit of the mesh network to be able to add a node to the network
../reset_creditsReset currently requested credits

8.3.8.1 Example: Scan for available mesh adapters

Task: The vicinity of the unit is to be scanned for available Bluetooth mesh adapters.

Solution: Run the service scan at the substructure meshnetwork/provisioning.

Request:

{
    "code": "request",
    "cid": 4711,
    "adr": "/meshnetwork/provisioning/scan"
} 

Response:

{
    "cid":4711,
    "data":[{
    "id": "XX-XX-XX-XX-XX-XX-XX-XX-XX-XX-XX-XX-XX-XX-XX-XX",
    "name": "EIO344 ifm SN: 123456789011",
    "info": [
    {
    "key": "MAC Address",
    "value": "aa-bb-cc-dd-ee-ff"
    },
    {
    "key": "Signal Strength",
    "value": 77
    }
    ]
}],
"adr":"/meshnetwork/provisioning/scan",
"code":200
} 

The base station has found a Bluetooth mesh adapter with the UUID ("id" field) and a name ("name" field). The mesh adapter has a MAC address and a signal strength of 77%.

8.3.8.2 Example: Register mesh adapter with mesh network

Task: The mesh adapter is to be registered with the Bluetooth mesh network using the data detected during the network scan.

Solution: Run the service register at the substructure meshnetwork/provisioning. The UUID of the mesh adapter must be passed.

Request:

{
    "code":10,
    "cid": 4711,
    "adr":"/meshnetwork/provisioning/register",
    "data":{
    "id":"XX-XX-XX-XX-XX-XX-XX-XX-XX-XX-XX-XX-XX-XX-XX"
    }
} 

Response:

{
    "code":200,
    "cid":4711,
    "adr":"/meshnetwork/provisioning/register",
    "data":{
    "adr":"/meshnetwork/mesh_adapter[1]"
    }
} 

After the Bluetooth mesh adapter has been registered successfully, its IoT Core tree is integrated into the IoT Core tree of the Bluetooth mesh base station (substructure meshnetwork/mesh_adapter[x] (x: 1...50)).

8.3.8.3 Example: Replace mesh adapter

Task: The mesh adapter with the UUID "XX-XX-XX-XX-XX-XX-XX-XX-XX-XX-XX-XX-XX-XX-XX" registered in the Bluetooth mesh network is to be replaced by the mesh adapter with the UUID "YY-YY-YY-YY-YY-YY-YY-YY-YY-YY-YY-YY-YY-YY-YY".

Solution: Run the service replace at the substructure meshnetwork/provisioning. The UUID of the two mesh adapters must be passed.

Request:

{
    "code": "request",
    "cid": 1,
    "adr": "/meshnetwork/provisioning/replace",
    "data": {
    "old_id": "XX-XX-XX-XX-XX-XX-XX-XX-XX-XX-XX-XX-XX-XX-XX",
    "new_id": "YY-YY-YY-YY-YY-YY-YY-YY-YY-YY-YY-YY-YY-YY-YY"
    }
} 

Response:

{
    "cid": 1,
    "adr": "/meshnetwork/provisioning/replace",
    "code": 200
} 

8.3.8.4 Example: Deregister mesh adapter from mesh network

Task: The Bluetooth mesh adapter with the UUID "YY-YY-YY-YY-YY-YY-YY-YY-YY-YY-YY-YY-YY-YY-YY-YY" is to be deregistered from the mesh network.

Solution: Run the service unregister at the substructure meshnetwork/provisioning. The UUID of the mesh adapter must be passed.

Request:

Request:

{
    "code": "request",
    "cid": 4711,
    "adr": "/meshnetwork/provisioning/unregister",
    "data": {
    "id": "YY-YY-YY-YY-YY-YY-YY-YY-YY-YY-YY-YY-YY-YY-YY"
    }
} 

Response:

{
    "cid":4711,
    "adr": "/meshnetwork/provisioning/unregister",
    "code":200
} 

The substructure of the mesh adapter (mesh_adapter[x] (x: 1...50)) is removed from the IoT Core tree of the mesh base station.

For each Bluetooth mesh IO-Link adapter integrated into the network, a substructure mesh_adapter[x] (x:1...50) is created under meshnetwork. The substructure contains the IoT Core of the Bluetooth mesh IO-Link adapter with device-specific structures and data points.

IFM EIO404 - Managing the Bluetooth mesh IO-Link adapters - 1

Description of the IoT Core of the Bluetooth mesh IO-Link adapters: → EIO344 operating instructions

The IoT Core of the Bluetooth mesh IO-Link adapter can only be accessed via the Bluetooth mesh IoT base station. The adapter must be integrated into the Bluetooth mesh network for this purpose.

8.3.10 Configuring the timers

The device has 2 timers. The timers can be used for time-triggered transmission of notifications ( → Using notifications ☐ 38).

Substructure: timer[1] | timer[2]

Available data points:

NameDescriptionValue rangeAccess
../counterCounter reading0...4294967295ro 1
../intervalCounting interval (value in ms)1000: 1000 ms86400000: 86400000 msrw 2
../interval/unitUnit of the counting intervalms: millisecondsro 1
../statusCounter status0: stopped - counter stopped1: running - counter runningro 1

1 Read only

2 Read and write

Applicable services:

NameDescription
../status/startStart the counter
../status/stopStop counter

8.3.10.1 Example: Set the counting interval

The counting interval of timer 2 is to be set to 2.5 s.

Request:

{
    "code": "request",
    "cid": 1,
    "adr": "/timer[2]/interval/setdata",
    "data": {
    "newvalue": 2500
    }
} 

Response:

{
    "cid": 1,
    "adr": "/timer[2]/interval/setdata",
    "code": 200
} 

8.3.10.2 Example: Start the counter

The counter of timer 2 is configured and is to be started.

Request:

{
    "code": "request",
    "cid": 1,
    "adr": "/timer[2]/status/start"
} 

Response:

{
    "cid": 1,
    "adr": "/timer[2]/status/start",
    "code": 200
} 

8.3.10.3 Example: Stop the counter

The counter of timer 2 is running and is to be stopped.

Request:

{
    "code": "request",
    "cid": 1,
    "adr": "/timer[2]/status/stop"
} 

Response:

{
    "cid": 1,
    "adr": "/timer[2]/status/stop",
    "code": 200
} 

8.3.11 Using notifications

The unit supports sending notifications. A notification can contain the current values of individual or multiple process data.

Available notification types:

• Event-triggered notifications (→ ☐ 39)
• Time-triggered notifications ( → ☐ 39)

Notifications are sent to a specific destination address. The destination address consists of the elements transmission protocol, IP address, port and topic (e.g: http://192.168.100.254:80/myTopic)

Supported transmission protocols:

  • http
  • mqtt

The activity duration of a notification can be set.

The user can view all active notifications using the getsubscriberlist service.

8.3.11.1 Event-triggered notifications

All elements of the ifm IoT Core with a sub-element of the type event can be used as triggers for event-triggered notifications.

NameDescription
../datachangedNode for displaying value changes of the parent data node
../eventcollectionNode for displaying value changes of multiple data nodes of the IoT Core
../treechangedNode for displaying structural changes in the IoT Core

Applicable services:

NameDescription
../subscribeSubscribe to notifications
../unsubscribeUnsubscribe from notifications

8.3.11.2 Time-triggered notifications

The ifm IoT Core offers 2 timers that can be used as triggers for time-triggered notifications.

NameDescription
../timer[1]/counter/datachangedCounter of timer 1
../timer[2]/counter/datachangedCounter of timer 2

The interval time of the timers can be set. Each counting pulse triggers a notification.

Applicable services:

NameDescription
../subscribeSubscribe to notifications
../unsubscribeUnsubscribe from notifications

8.3.11.3 Example: Create a time-triggered notification

Task: The values of the following parameters are to be sent to the topic myData on a network computer with the IP address 192.168.0.4 every 10 seconds:

• IO-Link input data of the sensor to Bluetooth mesh IO-Link adapter 1
- Operating temperature of the Bluetooth mesh IoT base station

Solution: The solution consists of 3 sub-steps:

▶ Set counting interval of timer 1 (10 s = 10000)

- Request:

{
    "code":"request",
    "cid":4712,
    "adr":"/timer[1]/interval/setdata",
    "data":{
    "newvalue":10000
    }
} 

▶ Start timer 1

- Request:

{
    "code": "request",
    "cid": 4712,
    "adr": "/timer[1]/counter/start",
} 

▶ Activate notifications

- Request:

{
    "code": "request",
    "cid": 4711,
    "adr": "/timer[1]/counter/datachanged/subscribe",
    "data": {
    "callback": "http://192.168.0.4:80/myData",
    "datatosend": [
    "/meshnetwork/mesh_adapter[1]/iolinkmaster/port[1]/iolinkdevice/pdin",
    "/processdatabasestation/temperature/cpu"
    ]
    }
} 

The notification is transmitted in JSON format. The notification is structured as follows:

{
    "code": "event",
    "cid": 4711,
    "adr": "",
    "data": {
    "eventno": "6317",
    "srcurl": "/timer[1]/counter/datachanged",
    "payload": {
    "/timer[1]/counter": {
    "code": 200,
    "data": 1
    },
    "/processdatabasestation/temperature/cpu": {
    "code": 200,
    "data": 39
    },
    "/meshnetwork/mesh_adapter[1]/iolinkmaster/port[1]/iolinkdevice/pdin": {
    "code": 200,
    "data": "03B0"
    }
    }
    }
} 

8.3.11.4 Example: Create an event-triggered notification

Task: In case of changes to the Bluetooth mesh network, a notification with the number of integrated mesh adapters is to be sent to a server (server IP address: 192.168.82.100, port: 80, topic: myData).

Solution:

Request:

{
    "code": "request",
    "cid": 1,
    "adr": "/treechanged/subscribe",
    "data": {
    "callback": "http://192.168.82.100:80/myData"
    "datatosend": [
    "/meshnetwork/provisioning/current_nodes"
    ]
    }
} 

Response:

{
    "cid": 1,
    "adr": "/treechanged/subscribe",
    "code": 200
} 

8.3.11.5 Example: Show active notifications

Task: All active notifications are to be shown.

Solution: Read all active notifications using the getsubscriberlist service.

Request:

{
    "code": "request",
    "cid": 4711,
    "adr": "/getsubscriberlist"
} 

Response:

{
    "cid": 4711,
    "data": [
    {
    "adr": "00-02-01-0B-AA-06/timer[1]/counter/datachanged",
    "datatosend": [
    "00-02-01-0b-aa-06/mesh_adapter[1]/iolinkmaster/port[1]/iolinkdevice/pdin",
    "00-02-01-0b-aa-06/processdatabasestation/temperature"
    ],
    "cid": 4711,
    "callbackurl": "http://192.168.0.4:80/myData",
    }
    ],
    "adr":"getsubscriberlist",
    "code": 200
} 

8.3.11.6 Example: Change a notification

Task: The existing subscription is to be changed. Instead of the temperature of the Bluetooth base station, the applied operating voltage is to be transmitted.

Solution: Overwrite the existing subscription. For this, the values of the parameters “cid” and “callback” in the request must be identical with the values of the existing subscription.

Request:

{
    "code": "request",
    "cid": 4712,
    "adr": "/timer[1]/counter/datachanged/subscribe",
    "data": {
    "callback": "http://192.168.0.4:80/myData",
    "datatosend": [
    "/meshnetwork/mesh_adapter[1]/iolinkmaster/port[2]/iolinkdevice/pdin",
    "/processdatabasestation/voltage/input"
    ]
    }
} 

Response:

{
    "cid":4712,
    "adr":"/timer[1]/counter/datachanged/subscribe",
    "code":200
} 

8.3.11.7 Example: Delete a notification

Task: The existing notification is to be deleted.

Solution: Use the unsubscribe service to delete the notification. For this, the value of the parameter "callback" in the request must be identical with the value of the existing notification.

Request:

{
    "code": "request",
    "cid": 4712,
    "adr": "/timer[1]/counter/datachanged/unsubscribe",
    "data": {
    "callback": "http://192.168.0.4:80/myData"
    }
} 

8.3.12 Using MQTT

The ifm IoT Core supports the MQTT protocol. MQTT lets a client communicate with the ifm IoT Core via a broker to request and receive data. The ifm IoT Core can publish data to an MQTT broker.

To enable MQTT communication, the user needs to configure the MQTT command channel. The configuration consists of the following sub-steps:

▶ Check that the MQTT broker can be reached.
▶ Check that the requested port of the MQTT broker is open.
▶ Activate the MQTT command channel.
▶ Configure the MQTT command channel.
▶ Configure the MQTT connection.
▷ The MQTT connection is configured and activated.

Once the MQTT command channel and the MQTT connection have been configured, data can be published to the MQTT broker using the subscribe service.

8.3.12.1 Configuring the MQTT connection

The following status diagram shows how the start, stop and reset services influence the current status of an MQTT connection:

IFM EIO404 - Configuring the MQTT connection - 1

After successful initialisation in the init state, the connection automatically changes to the running state.

The connection automatically switches to the error state if at least one of the following events occurs:

• No MQTT broker can be reached

Substructure: connections/mqttconnection

Available data points:

NameDescriptionValue rangeAccess
../typeType of the connection (MQTT)mqtt: MQTT connectionro 1
../statusStatus of the MQTT connectioninit: init state – initialisationstopped: stopped state – connection stoppedrunning: running state – connection runningerror: error statero 1
../status/presetPresetting of the status of the MQTT connectionrunning: running state (default)ro 1
../MQTTSetupSubstructure for general MQTT settings
../MQTTSetup/QoSQuality of Service (QoS) of the MQTT connection0: QoS level 0 - PUBLISH (without confirmation) (default)1: QoS level 1 - PUBLISH > PUBREC (single confirmation)2: QoS level 2 - PUBLISH > PUBREL > PUBCOMP (double confirmation)rw 2
../MQTTSetup/versionMQTT versionE.g. 3.1.1ro 1
../MQTTSetup/KeepAliveKeepAlive: Max. time between 2 successive MQTT protocol packets (value in s)0: deactivated...10: 10 s (default)...60: 60 srw 2

1 Read only
2 Read and write

Applicable services:

NameDescription
../status/startActivate MQTT.
../status/stopDeactivate MQTT.
../status/resetReset MQTT.

8.3.12.2 Configuring the MQTT command channel

▷ The MQTT command channel makes it possible to send and receive ifm IoT Core notifications ( → Using notifications ☐ 38).

Make sure that the MQTT broker can be reached and that the selected port of the MQTT broker is released for data transfer.

The wildcards “+” and “#” are not supported in topic names.

Substructure: connections/mqttconnection/mqttcmdchannel

Available data points:

NameDescriptionValue rangeAccess
../typeType of the command channel·mqtt: MQTT command channel (default)ro 1
../statusStatus of the command channel·init: init state·stopped: stopped state·running: running state (default)·error: error statero 1
../status/presetPreset channel state·running: running state (default)ro 1
../mqtt
CmdChannel
Setup
Substructure for settings of the command channel--
../mqtt
CmdChannel
Setup/brokerIP
IP address of the MQTT brokerE.g. 3.69.1.9rw 2
../mqtt
CmdChannel
Setup/broker-Port
Port number of the MQTT brokerE.g. 1883rw 2
../mqtt
CmdChannel
Setup/cmd-Topic
Name of the MQTT command topicE.g. reqTopicrw 2
../mqtt
CmdChannel
Setup/default
ReplyTopic
Name of the standard MQTT re-sponse topicE.g. resp
Topic
rw 2
../mqttcmdchannelsetup/userUser namee.g. user1rw 2
../mqttcmdchannelsetup/passwordPassword (not Base64-encoded)e.g. password123rw 2

1 Read only

2 Read and write

Applicable services:

NameDescription
../status/startStart the MQTT channel
../status/stopStop the MQTT channel
../status/resetReset the MQTT channel

8.3.12.3 Example: Configure and activate the MQTT command channel

Task: ▷ The MQTT command channel to an MQTT broker is to be configured (IP address: 192.168.82.100, port: 1883, command topic: reqTopic, standard response topic: resp
Topic). The MQTT connection is to be configured for QoS level 2.

Solution: The solution consists of the following sub-steps:

▶ Check whether the MQTT broker can be reached and the required port has been released.
▶ Activate the command channel.

Request:

{
    "code": "request",
    "cid": 1,
    "adr": "/connections/mqtt
Connection/mqtt
CmdChannel/status/start" }

▶ Set the IP address of the MQTT broker.

Request:

{
    "code": "request",
    "cid": 2,
    "adr": "/connections/mqtt
Connection/mqtt
CmdChannel/mqtt
CmdChannel
Setup/brokerIP/setdata", "data": { "newvalue": "192.168.82.100" } }

▶ Set the port of the MQTT broker.

Request:

{
    "code": "request",
    "cid": 3,
    "adr": "/connections/mqtt
Connection/mqtt
CmdChannel/mqtt
CmdChannel
Setup/broker
Port/setdata", "data": { "newvalue": 1883 } }

▶ Set the name of the topic.

Request:

{
    "code": "request",
    "cid": 4,
    "adr": "/connections/mqtt
Connection/mqtt
CmdChannel/mqtt
CmdChannel
Setup/cmdTopic/setdata", "data": { "newvalue": "reqTopic" } }

▶ Set the name of the standard response topic.

Request:

{
    "code": "request",
    "cid": 5,
    "adr": "/connections/mqtt
Connection/mqtt
CmdChannel/mqtt
CmdChannel
Setup/default
ReplyTopic/setdata", "data": { "newvalue": "resp
Topic" } }

▶ Set the QoS level.

Request:

{
    "code": "request",
    "cid": 6,
    "adr": "connections/mqtt
Connection/MQTTSetup/QoS/setdata", "data": { "newvalue": 2 } }

8.3.12.4 Example: Publish the device temperature to an MQTT broker

Task: The temperature of the unit is to be published to an MQTT broker every 10 seconds (MQTT broker: 192.168.82.100, port: 1883, topic: devtemp).

Solution:

Requirements:

√ ▷ The MQTT connection is configured.
√ ▷ The MQTT command channel is configured.
√ The interval of timer 1 is set to 10 s.
√ Timer 1 has started.
▶ Use the subscribe service to publish the process value to the MQTT broker.

Request – MQTT broker is not password protected:

{
    "code": "request",
    "cid": 4711,
    "adr": "/timer[1]/counter/datachanged/subscribe",
    "data": {
    "callback": "mqtt://192.168.82.100:1883/devtemp",
    "datatosend": [
    "processdatabasestation/temperature/cpu"
    ]
    }
} 

Request – MQTT broker is password protected (logon: user1, password: password123):

{
    "code":"request",
    "cid":4711,
    "adr":"/timer[1]/counter/datachanged/subscribe",
    "data":{
    "callback":"mqtt://user1:password123@192.168.82.100:1883/devtemp",
    "datatosend":["processdatabasestation/temperature/cpu"]
    }
} 

Response:

{
    "cid":4711,
    "adr":"/timer[1]/counter/datachanged/subscribe",
    "code":200
} 

The notification is sent in JSON format and has the following structure:

{
    "code": "event",
    "cid": 4711,
    "adr": "",
    "data": {
    "eventno": "6317",
    "srcurl": "/timer[1]/counter/datachanged",
    "payload": {
    "/timer[1]/counter": {"code": 200, "data": 1},
    "/processdatabasestation/temperature/cpu": {"code": 200, "data": 39}
    }
    }
} 

8.3.13 Resetting, rebooting and localising the device

Substructure: firmware

Applicable services:

NameDescription
../factoryresetReset the device to factory settings
../rebootRestart the device
../signalTrigger flashing of the status LED

8.3.14 Reading and writing device information

Substructure: deviceinfo

Available data points:

NameDescriptionValue rangeAccess
../serialnumberSerial numberE.g. 000194610104ro 1
../swrevisionFirmware versionE.g. V1.36ro 1
../bootloaderrevisionBootloader versionE.g. V0.06ro 1
../productinstanceuriName of the root node in the IoT Core treeE.g. B4-E3-F9-C7-54-43ro 1
../eepromversionEEPROM versionE.g. V0.02ro 1
../btmacaddressBluetooth MAC addressE.g. B4-E3-F9-C7-54-43ro 1
../hwrevisionHardware versionE.g. AAro 1
../producttextProduct designationBluetooth Mesh IoT Basestationro 1
../vendorVendorifm electronic gmbhro 1
../productnameProduct nameEIO404ro 1
../productcodeProduct codeEIO404ro 1
../devicenameUser-specific device nameE.g. mesh_baserw 2

1 Read only

2 Read and write

8.3.15 Reading status and diagnostic information

Substructure: processdatabasestation

Available data points:

NameDescriptionValue rangeAccess
../temperature/cpuCPU temperature of the device (value in °C)-40: -40 °C...85: 85 °Cro 1
../voltage/inputInput voltage of the unit (value in mV)0: 0 mV...40000: 40000 mVro 1
../operatingstateOperating status of the unit0: device OK1: Bluetooth Mesh no device provisioned2: Ethernet link not connected3: electronic temperature out of range4: Bluetooth LE connected5: firmware update installation6: hardware error7: undervoltagero 1

1 Read only

8.4 ifm moneo|configure

8.4.1 Connecting to the device

IFM EIO404 - Connecting to the device - 1

▶ During initial set-up, change the factory-set password for the Bluetooth interface, Bluetooth LE: Configuring password protection ( → ☐ 53).

▶ Also set the password for the Ethernet interface, IoT: Configuring password protection ( → ☐ 52).

Requirements:

√ The device is connected to moneo PC/laptop via Ethernet interface.
√ ifm moneo|configure is installed and licensed from the PC/laptop, Installing ifm moneo|configure (→ 17).
▶ Start ifm moneo|configure.
▶ Search the network for available devices (device type: Generic IoT-Core device, IP address: 192.168.0.79).

▷ ifm moneo|configure detects the device.

IFM EIO404 - Connecting to the device - 2

▶ In the [Actions] column: Click on 🔒.

▷ The parameter value editor for the device appears.

To add a Bluetooth Mesh IO-Link adapter to a Bluetooth Mesh network, the adapter must be provisioned on the Bluetooth Mesh IoT base station.

Requirements:

√ ifm moneo|configure has been started.
√ The device was found during network scan.

IFM EIO404 - Provisioning Bluetooth Mesh IO-Link adapters - 1

▶ In the [Actions] column: Click on ⚙.

▷ A dialogue window appears.

▷ The Bluetooth Mesh IoT base station searches the neighbourhood for available Bluetooth Mesh IO-Link adapters.
▷ Available devices are displayed in the list.

IFM EIO404 - Provisioning Bluetooth Mesh IO-Link adapters - 2

▶ Select the required Bluetooth Mesh IO-Link adapter.
▶ Click on [CONNECT].
▷ Selected Bluetooth Mesh IO-Link adapters are provisioned.
▷ Provisioned devices are participants in the Bluetooth Mesh network.
▷ In the overview view, the provisioned adapters appear as sub-nodes of the Bluetooth Mesh IoT base station.

IFM EIO404 - Provisioning Bluetooth Mesh IO-Link adapters - 3

After provisioning, the Bluetooth Mesh IoT base station independently establishes the connection to all provisioned Bluetooth Mesh IO-Link adapters. The connection is established directly or via other Bluetooth Mesh IO-Link adapters.

The Bluetooth Mesh IO-Link adapters send the process data to the Bluetooth Mesh IoT base station cyclically at a defined interval. The process data can be read out there and used for system monitoring.

Requirements:

√ ifm moneo|configure has been started.
√ The device was recognised during the network scan.
√ Bluetooth Mesh IO-Link adapter is a participant in the Bluetooth Mesh network.

IFM EIO404 - Removing a Bluetooth Mesh IO-Link adapter from the mesh network - 1

▶ In the [Actions] column: Click on 🔊.
▷ A note on the consequences of removal appears.
▶ Click on [OK] to confirm the message.
The Bluetooth Mesh IO-Link adapter is removed from the Bluetooth Mesh network.
▷ The credit used for provisioning is released.

8.4.2 Info: Reading identification information

Available information:

NameDescriptionValue rangeAccess
[Serial number]Serial numberE.g. 000022503648ro 1
[SW-Revision]Firmware versionE.g. V1.42ro 1
[Bootloader revision]Bootloader versionE.g. V0.07ro 1
[EEPROM revision]EEPROM versionE.g. V0.03ro 1
[Bluetooth MAC address]Bluetooth MAC addressE.g. B4-E3-F9-C7-54-43ro 1
[HW-Revision]Hardware versionE.g. AAro 1
[Product text]Product designationBluetooth Mesh IoT Basestationro 1
[Vendor]Vendorifm electronic gmbhro 1
[Product code]Article numberEIO404ro 1

1 Read only

Requirements:

√ The parameter value editor for the device is open.
▶ Select [Info] menu.
▷ The menu page shows the device information.

8.4.3 IoT: Configuring IP settings

Available parameters:

NameDescriptionValue rangeAccess
[IP address]IP address of the Ethernet interfacee.g. 192.168.0.100 rw1
[Subnet mask]Subnet mask of the Ethernet networke.g. 255.255.255.0 rw1
[Default gateway IP address]IP address of the network gatewaye.g. 192.168.0.1 rw1
[DHCP]Enable / disable the DHCP client of the deviceStatic IP: IP settings are set by the user (default)DHCP: IP settings are set by DHCP server in the network. rw1
[MAC address]MAC address of the interfaceE.g. 00-02-01-42-DC-B0 ro2

1 Read and write
2 Read only

Requirements:

√ The parameter value editor for the device is open.
▶ Select the [IoT] menu.
▷ The menu page shows the current settings of the Ethernet interface.
▶ Set the parameters.
▶ Write the changed values to the device.
▷ The new IP settings of the Ethernet interface are active.

8.4.4 IoT: Configuring password protection

Password protection is used to protect the device against unauthorised access via the Ethernet interface.

Once the password has been set, the user must authenticate themselves with a user name and password when accessing the device via the Ethernet interface.

The user name is administrator. The user name is fixed and cannot be changed.

Available parameters:

NameDescriptionValue rangeAccess
[Security password]Password for protected access to Ethernet interface (permitted length: 6 to 32 characters)wo 1

1 write only

8.4.4.1 Setting an Ethernet password

To set the password for the Ethernet interface:

Requirements:

√ The parameter value editor for the device is open.
▶ Select the [IoT] menu.
▷ The menu page shows the current settings.
▶ Enter your password.
▶ Write the changed values to the device.
▷ Password protection is enabled.
▷ The next time the user accesses the device, they must log in with their user name and the selected password.

8.4.4.2 Resetting an Ethernet password

Resetting the password deactivates the protection against unauthorised access to the Ethernet interface of the device.

To reset the password for the Ethernet interface:

Requirements:

√ The [Configure devices] view is open.
√ The parameter value editor for the device is open.
√ The security mode of the Ethernet interface is enabled.

▶ Select the [IoT] menu.
▷ The menu page shows the current settings.
▶ Click on [Reset password].
▷ The password will be deleted.
▷ The password protection is deactivated.
The user can access the device via the Ethernet interface without entering a user name and password.

8.4.5 Bluetooth LE: Setting station names

Available data points:

NameDescriptionValue rangeAccess
[Bluetooth LE name]Name of the device in the Bluetooth LE network (max. 22 characters)E.g. temperature collector rw1

1 Read and write

Requirements:

√ The parameter value editor for the device is open.
▶ Select [Bluetooth LE] menu.
▷ The menu page shows the current settings.
▶ Enter the station name.
▶ Write the changed values to the device.
▷ The name of the device in the Bluetooth LE network is set.

8.4.6 Bluetooth LE: Configuring password protection

IFM EIO404 - Bluetooth LE: Configuring password protection - 1

Take note of the information regarding the Bluetooth password: Bluetooth password (→ ☐ 17)

Available parameters:

NameDescriptionValue rangeAccess
[Security password]Set a password for authentication on the Bluetooth LE interface• Min length: 6• Max. length: 32NOTE! The password has no influence on the mesh functionality.rw 1

1 Read and write

8.4.6.1 Change a Bluetooth password

To change the password for the Bluetooth LE interface:

Requirements:

√ The parameter value editor for the device is open.

▶ Select [Bluetooth LE] menu.

▷ The menu page shows the current settings.

▶ Enter your password.

▶ Write the changed values to the device.

▷ The new password is active.

8.4.7 Bluetooth Mesh: Managing the network

To obtain information on the mesh adapters active in the mesh network:

Available information:

NameDescriptionValue rangeAccess
[Max Mesh Nodes]Max. number of nodes0...50ro 1
[Current Mesh Nodes]Current number of nodes in the mesh network0...50ro 1
[Taken Mesh Credits]Current number of credits used for provisioningro 1

1 Read only

Requirements:

√ The parameter value editor for the device is open.
▶ Select [Bluetooth Mesh] menu.
▷ Menu page shows information about the mesh network.

8.4.8 MQTT: Configuring the MQTT connection

Available parameters:

NameDescriptionValue rangeAccess
[MQTT Version]MQTT versionE.g. 3.1.1ro 1
[Quality of Service]Quality of Service (QoS) of the MQTT connectionQoS 0: QoS level 0 - PUBLISH (without confirmation) (default)QoS 1: QoS level 1 - PUBLISH > PUBREC (single confirmation)QoS 2: QoS level 2 - PUBLISH > PUBREC > PUBREL > PUBCOMP (double confirmation)rw 2
[Keep Alive]Max. time between 2 successive MQTT protocol packets (value in s)0: 0 s...10: 10 s...60: 60 srw 2

1 Read only

2 Read and write

Requirements:

√ The parameter value editor for the device is open.
▶ Open the [MQTT] menu.
▷ The menu page shows current configuration of the MQTT connection.
▶ Set the parameters.
▶ Write the changed values to the device.
▷ The MQTT connection is configured.

8.4.8.1 Controlling the MQTT connection

The following status diagram shows how the start, stop and reset services influence the current status of an MQTT connection:

IFM EIO404 - Controlling the MQTT connection - 1

After successful initialisation in the init state, the connection automatically changes to the running state.

The connection automatically switches to the error state if at least one of the following events occurs:

• No MQTT broker can be reached

Requirements:

√ The parameter value editor for the device is open.
√ The MQTT connection is configured.
▶ Open the [MQTT] menu.

To enable the MQTT connection:

▶ Click on [Start].
▷ The MQTT connection is enabled.

To disable the MQTT connection:

▶ Click on [Stop].
▷ The MQTT connection is disabled.

To reset the MQTT connection:

▶ Click on [Reset].
▷ The MQTT connection is reset.

8.4.9 MQTT: Configuring the command channel

Make sure that the MQTT broker can be reached and that the selected port of the MQTT broker is released for data transfer.

The wildcards “+” and “#” are not supported in topic names.

Available parameters:

NameDescriptionValue rangeAccess
[Broker IP]IP address of the MQTT brokere.g. 3.69.1.9 rw1
[Broker Port]Port number of the MQTT brokerE.g. 1883 rw1
[Topic]Designation of the MQTT topicE.g. reqTopic rw1
[Reply Topic]Standard response topicE.g. resp
Topic
rw1
[Username]User nameE.g. user1 rw1
[Password]Password (not Base64-encoded)E.g. passwort123 wo2

1 Read and write
2 write only

Requirements:

√ The parameter value editor for the device is open.
▶ Go to [MQTT] > [MQTT Command Channel].
▷ The menu page shows current configuration of the MQTT command channel.
▶ Set the parameters.
▶ Write the changed values to the device.
▷ The MQTT command channel is configured.

8.4.9.1 Controlling the MQTT command channel

Requirements:

√ The parameter value editor for the device is open.
√ The MQTT command channel is configured.
▶ Go to [MQTT] > [MQTT Command Channel].

To enable the MQTT command channel:

▶ Click on [Start].
The MQTT command channel is enabled.

To disable the MQTT command channel:

▶ Click on [Stop].
The MQTT command channel is disabled.

To reset the MQTT command channel:

▶ Click on [Reset].
▷ The MQTT command channel is reset.

8.4.10 Timer: Configuring the timers

The device has 2 timers. The timers can be used for time-triggered transmission of notifications.

Available parameters:

NameDescriptionValue rangeAccess
[Interval]Counting interval (value in ms)1000: 1000 ms86400000: 86400000 ms rw1

1 Read and write

Requirements:

√ The parameter value editor for the device is open.
▶ Select the [Timer 1] / [Timer 2] menu.
▷ The menu page shows the current settings.
▶ Enter the counter interval.
▶ Write the changed values to the device.
▷ The counter interval of the selected counter is set.

8.4.10.1 Starting the timer

The timers [Timer 1] and [Timer 2] can be started separately.

Requirements:

√ The parameter value editor for the device is open.

√ The counter interval is set.
▶ Select the [Timer 1] / [Timer 2] menu.
▷ The menu page shows the current settings.
▶ Click on [Start].
▷ The selected timer starts at 0.
▷ When the set counter interval expires, the timer generates a signal.

8.4.10.2 Stopping the timer

The timers [Timer 1] and [Timer 2] can be stopped separately.

Requirements:

√ The parameter value editor for the device is open.
▶ Select the [Timer 1] / [Timer 2] menu.
▷ The menu page shows the current settings.
▶ Click on [Stop].
▷ The timer is stopped.

8.4.11 Firmware: Resetting, rebooting or localising the device

Requirements:

√ The parameter value editor for the device is open.
▶ Select [Firmware] menu.
▷ The menu page shows the available options.

To localise the device:

▶ Click on [Signal].
▷ The LEDs on the device are flashing.

To reset the device:

▶ Click on [Factory Reset].
▷ The device is reset to the factory settings.

To reboot the device:

▶ Click on [Reboot].
▷ Unit reboots

8.5 IoT-Core Visualizer

The IoT Core Visualizer provides a graphical user interface to access the functions of the ifm IoT Core.

8.5.1 Starting the IoT Core Visualizer

To start the IoT Core Visualizer:

Requirements:

√ The device is properly connected, Parameter setting via Ethernet interface ( → ☐ 16).
√ The Ethernet interface is configured.
▶ Start web browser.
▶ Go to the following URL: http:// (in the factory settings http://192.168.0.79).
▷ The web browser displays the IoT Core Visualizer start page.

IFM EIO404 - Starting the IoT Core Visualizer - 1

The navigation menu gives the user access to the following functions:

• [Notification]: Managing notifications ( → ☐ 58)
• [Elements]: Accessing the IoT Core tree ( → ☐ 60)
• [Update]: Update firmware

8.5.2 Managing notifications

The [Notification] menu page provides access to the notification function of the IoT Core.

IFM EIO404 - Managing notifications - 1

▶ Observe the notes on notifications: Using notifications ( → ☐ 38)

Requirements:

√ IoT Core Visualizer has been started.
▶ Select the [Notification] menu.
▷ Menu page for managing notifications appears.
▷ Table shows all active notifications.

8.5.2.1 Create new notifications

New notifications are created using a wizard.

IFM EIO404 - Create new notifications - 1

For time-triggered notifications via timer 1 or timer 2, the user must set the interval time of the corresponding timer.

Requirements:

√ IoT Core Visualizer has been started.

√ Menu [Notification] is active.
▶ Click on + on the right side of the table.
▷ The wizard for creating notifications appears.

IFM EIO404 - Create new notifications - 2

▶ Use the wizard to select the desired notification parameters step by step.
▷ The table shows the notification that has been created.

8.5.2.2 Delete notifications

Requirements:

√ IoT Core Visualizer has been started.
√ Menu [Notification] is active.
√ At least one notification has been created.
▶ Click on × in the notification line in the [Unsubscribe] column.
▷ Selected notification is deleted.

8.5.3 Accessing the IoT Core tree

The [Elements] menu page provides access to the IoT Core tree of the unit.

Requirements:

√ IoT Core Visualizer has been started.
▶ Select the menu option [Elements].
▷ The menu page for accessing the elements of the IoT core tree appears.
▷ The IoT Core tree structure of the unit is visualised.

8.5.3.1 Searching for elements of the IoT Core

The [Elements] menu page allows you to search the IoT Core tree for elements with specific properties and output the results.

The following properties can be searched for:

• [identifier]: Name of the element
• [profile]: Profile of the element
• [type]: Type of the element

Requirements:

√ IoT Core Visualizer has been started.
√ The [Elements] menu is active.

IFM EIO404 - Searching for elements of the IoT Core - 1

▶ Select the search criteria for the required element in the selection lists [identifier], [profile] and [type].
▶ Click on [Search for Elements].
▷ IoT Core Visualizer searches the device description for elements with selected search criteria.
▷ The result list shows all the elements found.

8.5.3.2 Accessing elements of the IoT Core

The user can access the elements of the IoT Core with the services supported by the unit.

▶ For more information regarding the functions of the ifm IoT Core see: ifm IoT Core REST API (→ 24)

Requirements:

√ IoT Core Visualizer has been started.

√ The [Elements] menu is active.

▶ Optional: Searching for elements of the IoT Core (→ ☐ 60)
▶ Navigate to the element.
▶ Click on the arrow symbol next to the service.

▷ A dialogue window appears.

▶ Optional: In case of write access, enter the required values in the field.
▶ Click on [Request] to execute the service.
▷ The service is executed on the unit.

OR

▶ Click on [Cancel] to cancel the process.
▷ The service is not executed.

8.5.4 Firmware update

The [Update] menu page offers the option of updating the firmware of the Bluetooth Mesh IoT base station and the provisioned Bluetooth Mesh IO-Link adapters.

IFM EIO404 - Firmware update - 1

New firmware available on the product detail page of the device: documentation.ifm.com

IFM EIO404 - Firmware update - 2

For information on updating the firmware of a single Bluetooth Mesh IO-Link adapter: Operating instructions EIO344

IFM EIO404 - Firmware update - 3

The firmware update must not be interrupted.

▶ Do not restart the device during the update process.
▶ Wait until the update is complete.

Requirements:

√ IoT Core Visualizer has been started.
√ New firmware has been downloaded. documentation.ifm.com
▶ Select the [Update] menu.

▷ The menu page shows information on the current firmware version of the Bluetooth Mesh IoT base station (area [Base_update]).
▷ The menu page shows information on the current firmware version of the Bluetooth Mesh IO-Link adapters provisioned on the base station (area [Adapter_update]).

00-02-01-30-1A-00 - onlineVisualizer v2.25.257
NotificationElementsUpdate
Base_update
00-02-01-30-1A-00/firmware/base_updateContainer
Version:V1.54GChunk size:1024G
Type:firmwareGMax size:2621440G
Load software filechoose software packageSize:0G
Update
Adapter_update
00-02-01-30-1A-00/meshnetwork/adapter_updateContainer
Version:unknownGChunk size:1024G
Type:firmwareGMax size:2621440G
Load software filechoose software packageSize:0G
Update

To update the firmware of the Bluetooth Mesh IoT base station:

▶ Switch to the Bluetooth Mesh IoT base station area.
▶ Click on [Load software file] and select the new firmware file (*.bin).
▶ Click on [Update] to start the update process.
▷ The firmware of the Bluetooth Mesh IoT base station is updated.
▷ The progress of the update process is displayed.

▷ After successful update: The device reboots automatically.

To update the firmware of all provisioned and connected Bluetooth Mesh IO-Link adapters:

▶ Switch to the Bluetooth Mesh IO-Link adapter area.
▶ Click on [Load software file] and select the new firmware file (*.bin).
▶ Click on [Update] to start the update process.

▷ Firmware of all provisioned and connected Bluetooth Mesh IO-Link adapters is updated.
▷ The progress of the update process is displayed.

▷ After successful update: The devices restart automatically.

9 Troubleshooting

Errors, warnings and status messages are indicated by the status LED: Operating and display elements ( → ☐ 15)

In the event of an error (status LED flashes red), the device status provides detailed diagnostic information.

Fault descriptionCause of the faultCorrective measures
The device is connected to the power supply, status LED is offSupply voltage too low▸ Check the voltage supply
The device is connected to the power supply, status LED lights up redHardware error, the device is defective▸ Replace device
The status LED flashes red, device status: [Over temperature] or [Under temperature]Temperature of the circuit board outside the tolerance range▸ Check the ambient temperature
The status LED flashes red, device status: [Bluetooth Mesh no device provisioned]No connection to the Bluetooth Mesh network▸ Check the distances to Bluetooth Mesh IO-Link adapters
The status LED flashes red, device status: [Ethernet link not connected]No Ethernet connection▸ Check the Ethernet wiring

ifm moneo provides additional status and diagnostic information in online mode: → ifm moneo online help

10 Maintenance, repair and disposal

The unit is maintenance-free.

▶ Contact ifm in case of malfunction.
▶ Do not open the housing as the unit does not contain any components which can be maintained by the user. The unit must only be repaired by the manufacturer.
▶ Clean the device using a dry cloth.
▶ Dispose of the unit in accordance with the national environmental regulations.

10.1 Firmware update

The device firmware can be updated using the following options:

  • ifm moneo|blue: Firmware update (→ 22)
    • IoT-Core Visualizer: Firmware update (→ 62)

11 Appendix

11.1 ifm IoT Core

11.1.1 Profiles

ProfileDescription
blobBinary Large Object
comm
Channel
Communication channel
comm
Interface
Communication interface
connectionsConnections
const_valueConstant
datarequiredData required
deviceinfoIdentification information
deviceresetResettable firmware
devicestatusDevice status
eventcollectionEvent collection
mqtt
CmdChannel
Set-up
MQTT command channel settings
mqtt
Setup
MQTT settings
networkNetwork
parameterParameter
processdataProcess data
runcontrolControl structure
securityconfig_baseSecurity settings
softwareSoftware
software/uploadable-softwareUpgradeable software
subdatablockData that can only be changed blockwise
timerTimer
wirelessprovisioningStructure for the management of radio networks

11.1.2 Types

TypeDescription
dataData point
deviceRoot element representing a device
eventEvent that can be triggered by the firmware and sends notifications
serviceService that can be addressed from the network
structureStructural element (e.g. a folder in the file system)

11.1.3 Services

11.1.3.1 Service: create_backup

Name: create_backup

Description: The service creates a backup of the current settings of the unit.

Request ("data" field): none

Response ("data" field): none

11.1.3.2 Service: factoryreset

Name: factoryreset

Description: The service sets the parameters of the device to the factory settings.

Request ("data" field): none

Response ("data" field): none

11.1.3.3 Service: get_credit

Name: get_credit

Description: The service reads an available credit of the Bluetooth network.

Request ("data" field): none

Response ("data" field):

ParameterMandatory fieldData typeDescription
netkeyMandatorySTRINGNetwork key
iv_keyMandatoryINTIndex
appkeyMandatorySTRINGApplication key
addressMandatoryINTAddress
expiry_timeMandatoryINTExpiry time (value in s)

11.1.3.4 Service: getblobdata

Name: getblobdata

Description: The service reads a Binary Large Object (blob).

Request ("data" field):

ParameterMandatory fieldData typeDescription
PosMandatoryNUMBERByte position
lengthMandatoryNUMBERSize of the object (number of bytes)

Response ("data" field):

ParameterMandatory fieldData typeDescription
dataMandatorySTRINGData to be decoded (BASE64-encoded)
crcOptionalHEX STRINGCRC of the data after decoding
md5OptionalHEX STRINGMD5 checksum of the data after decoding

11.1.3.5 Service: getdata

Name: getdata

Description: The service reads the value of a data point and provides it.

Request ("data" field): none

Response ("data" field):

ParameterMandatory fieldData typeDescription
valueMandatorySTRINGValue of the data point

11.1.3.6 Service: getdatamulti

Name: getdatamulti

Description: The service sequentially reads the values of multiple data points and outputs them. The value and a diagnostic code are output for each data point.

Request ("data" field):

ParameterMandatory fieldData typeDescription
datatosendMandatoryARRAY OF STRINGSList of data points to be requested; data points must support the getdata service ("datatosend":[“url1”, “url2”, ..., “urlx”])

Response ("data" field):

ParameterMandatory fieldData typeDescription
urlMandatorySTRINGData point that was queried
codeMandatoryINTDiagnostic code of the request
dataMandatorySTRINGValue of the data point

11.1.3.7 Service: getidentity

Name: getidentity

Description: The service retrieves information about the identity of the device.

Request ("data" field): none

Response ("data" field):

ParameterMandatory fieldData typeDescription
iotdeviceDevice description as JSON object
iot.namemandatorySTRINGType of the element
iot.uidoptionalSTRING
iot.versionmandatorySTRING
iot.catalogueoptionalARRAY OF OBJECTS
iot.deviceclassoptionalARRAY OF STRINGDevice class
iot.serverlistoptionalARRAY OF OBJECTS
deviceoptionalArticle nummer
device.serialnumberoptionalSerial number
device.hwrevisionoptionalHardware version
device.swrevisionoptionalSoftware version
device.customoptional

The parameter security.isPasswd
Set returns the password status of the connection through which the service is accessed.

Example 1:

√ Password for Bluetooth connection is set.
▶ Make a getidentity request via a web browser.
▷ security.isPasswd
Set = false

Example 2:

√ Password for Ethernet connection is set.
▶ Make a getidentity request via a web browser.
▷ security.isPasswd
Set = true

11.1.3.8 Service: getsubscriberlist

Name: getsubscriberlist

Description: The service provides a list of all active subscriptions.

Request ("data" field): none

Response ("data" field):

ParameterMandatory fieldData typeDescription
adrmandatorySTRINGNotification trigger
datatosendmandatoryARRAY OF STRINGSList with URLs of the data elements; URLs are comma separated
cidmandatorySTRINGID of the active notification
callbackurlmandatorySTRINGDestination address for the notifications
durationmandatorySTRINGActivity duration

11.1.3.9 Service: gettree

Name: gettree

Description: The service reads the device description of the unit and outputs it as a JSON object. The output can be limited to a subtree of the device description.

Request ("data" field):

ParameterMandatory fieldData typeDescription
adrOptionalSTRINGRoot element of the subtree
levelOptionalSTRINGMax. level up to which the subtree is outputno entry: all levels will be displayed0: do not display sub-elements (“subs”)1: display sub-elements2: display sub-elements up to the 2nd level3: display sub-elements up to the 3rd level...20: display sub-elements up to the 20th level

Response ("data" field):

ParameterMandatory fieldData typeDescription
identifiermandatorySTRINGIdentifier of the root element
typemandatorySTRINGType of the element
formatOptionalJSON objectFormat of the data content
uidOptionalSTRING
profilesOptionalJSON array
subsmandatoryJSON arraySub-elements
hashOptionalSTRING

11.1.3.10 Service: install

Name: install

Description: The service installs the software stored in a memory area of the unit.

Request ("data" field): none

Response ("data" field): none

11.1.3.11 Service: install_backup

Name: install_backup

Description: The service restores a backup stored in the memory area of the unit.

Request ("data" field): none

Response ("data" field): none

11.1.3.12 Service: querytree

Name: querytree

Description: The service searches a device tree for the criteria profile, type and identifier and outputs a list with the URLs of the elements found. At least one of the search criteria must be specified. The service can only be executed on the root node of the unit.

Request ("data" field):

ParameterMandatory fieldData typeDescription
profileOptionalSTRINGProfile of the requested element
typeOptionalSTRINGType of the requested element
identifierOptionalSTRINGName of the requested element

Response ("data" field): none

ParameterMandatory fieldData typeDescription
urllistmandatoryARRAYArray with URLs of the found elements; URLs are separated by commas

11.1.3.13 Service: reboot

Name: reboot

Description: The service reboots the device.

Request ("data" field): none

Response ("data" field): none

11.1.3.14 Service: register

Name: register

Description: The service registers a supported device in the network.

Request ("data" field):

ParameterMandatory fieldData typeDescription
idMandatorySTRINGIdentifier of the device that is to be registered with the network

Response ("data" field):

ParameterMandatory fieldData typeDescription
adrOptionalSTRINGPath to the device in the network structure

11.1.3.15 Service: replace

Name: replace

Description: The service deregisters a device from the network and registers a device of the same type in the network.

Request ("data" field):

ParameterMandatory fieldData typeDescription
old_idMandatorySTRINGIdentifier of the device that is to be replaced
new_idMandatorySTRINGIdentifier of the device that is to be registered

Response ("data" field): none

11.1.3.16 Service: reset

Name: reset

Description: The service resets a connection to the initialisation state.

Request ("data" field): none

Response ("data" field): none

11.1.3.17 Service: resetpassword

Name: resetpassword

Description: The service deactivates the security mode and resets the password.

Request ("data" field): none

Response ("data" field): none

11.1.3.18 Service: reset_credits

Name: reset_credits

Description: The service resets all requested credits of the Bluetooth adapters registered in the mesh network.

Request ("data" field): none

Response ("data" field): none

11.1.3.19 Service: scan

Name: scan

Description: The service searches for supported devices in the vicinity. Found devices and their properties are output.

Request ("data" field): none

Response ("data" field):

ParameterMandatory fieldData typeDescription
idMandatorySTRINGIdentifier of the device
nameMandatorySTRINGName of the device
infoOptionalARRAYProperties of the device• Mandatory: signal strength

11.1.3.20 Service: setblock

Name: setblock

Description: The service simultaneously sets the values of multiple data points of a structure.

Request ("data" field):

ParameterMandatory fieldData typeDescription
datatosetmandatoryARRAY OF OBJECTSList of data points and their new values; Data points must support the setdata service
consistentOptionalBOOLResponse within a certain time

Response ("data" field): none

11.1.3.21 Service: setdata

Name: setdata

Description: The service sets the value of a data point.

Request ("data" field):

ParameterMandatory fieldData typeDescription
newvaluemandatorySTRINGNew value of the data point
durationOptionalSTRINGDuration of value storagelifetime: value is saved with IoT Core; value remains valid even after restart of the deviceuptime: value is saved until the next restart of the device

Response ("data" field): none

11.1.3.22 Service: setdatamulti

Name: setdatamulti

Description: The service sequentially writes the values of multiple data points. For each data point, the target value must be provided.

Request ("data" field):

ParameterMandatory fieldData typeDescription
datatosendmandatoryARRAY OF STRINGSList of data points and associated values (coded) to be written; data points must support the setdata service ("datatosend":["url1":"value1","url2":value2",...,"urlx":"valuex"])

Response ("data" field): none

11.1.3.23 Service: signal

Name: signal

Description: The service triggers the flashing of the status LEDs of the unit.

Request ("data" field): none

Response ("data" field): none

11.1.3.24 Service: start

Name: start

Description: The service starts a function (e.g. connection, timer).

Request ("data" field): none

Response ("data" field): none

11.1.3.25 Service: start_stream_set

Name: start_stream_set

Description: The service starts the sequential transmission of several data fragments.

Request ("data" field):

ParameterMandatory fieldData typeDescription
sizemandatorySTRINGOverall length of the data to be transmitted (number of bytes)

Response ("data" field): none

11.1.3.26 Service: stop

Name: stop

Description: The service stops a function (e.g. connection, timer).

Request ("data" field): none

Response ("data" field): none

11.1.3.27 Service: stream_set

Name: stream_set

Description: The service transfers a data segment.

Request ("data" field):

ParameterMandatory fieldData typeDescription
valuemandatoryBIN (BASE64)Segment of the binary data (BASE64-encoded)

Response ("data" field): none

11.1.3.28 Service: subscribe

Name: subscribe

Description: The service activates the notification.

Request ("data" field):

ParameterMandatory fieldData typeDescription
callbackMandatorySTRINGDestination address for notifications; URL format:JSON: http://ipaddress:port/pathJSON: ws://pathMQTT: mqtt://ipaddress:port/path
datatosendMandatoryARRAY OF STRINGSList with URLs of the data elements; URLs are comma-separated; elements must support the getdata service
durationOptionalSTRINGPeriod of validity of the notificationlifetime: login remains permanently active, also after restarting the unituptime: login is active until the next restart of the deviceonce: send only one notification, user must unsubscribe immediately

Response ("data" field): none

Notification format: JSON

{
    "code": "event",
    "cid": 4711,
    "adr": "",
    "data": {
    "eventno": "EventNo",
    "srcurl": "SrcURL",
    "payload": {
    "eventurl": {"code": Event
Status, "data": Event
Data}, "datapointurl_1": {"code": DataStatus_1, "data": DataValue_1}, "datapointurl_2": {"code": DataStatus_2, "data": DataValue_2}, ... } } }

11.1.3.29 Service: unregister

Name: unregister

Description: The service deregisters a device from a network.

Request ("data" field):

ParameterMandatory fieldData typeDescription
id optional 1 STRINGIdentifier of the device to be deregistered from the network
adr optional 1 STRINGPath to the device in the network structure

1 at least one of the two parameters must be provided

Response ("data" field): none

11.1.3.30 Service: unsubscribe

Name: unsubscribe

Description: The service deletes an active notification. The provided values for “cid” and “callback” must be identical with the values of the notification registration (subscribe). If the value “DELETE” is provided in the callback, all active subscriptions will be deleted.

Request ("data" field):

ParameterMandatory fieldData typeDescription
callbackMandatorySTRINGDestination address for notifications; URL formats:JSON: http://ipaddress:port/pathJSON: ws://pathJSON: mqtt://ipadress:port/topicDELETE: all active notifications are deleted

Response ("data" field): none

Table of contents Click a title to access it
Manual assistant
Powered by Anthropic
Waiting for your message
Product information

Brand : IFM

Model : EIO404

Category : Bluetooth base station