Skip to content

Releases: emqx/neuron

2.2.0 Release

02 Sep 09:42
9723978
Compare
Choose a tag to compare

Features

  • Add Beckhoff ADS driver
  • Add OPC DA driver
  • Add NON A11 driver
  • Add S7COMM for 300 driver
  • MQTT plugin supports caching data when offline.
  • QnA 3E plugin supports batch reading of tags.
  • RESTful plugin supports proxy http request.
  • MQTT plugin adds heartbeat msg and reports the status of all nodes.
  • MODBUS plugin supports int64/uint64/double.
  • Plugin stops, disconnect from the device.
  • Tag supports subscription, and data is uploaded only when the data changes.
  • Tag of type float/double supports configuration precision.

HTTP API

  • GET /api/v2/group get groups of all drivers.
  • GET /api/v2/node/state get status of all nodes.

Improve

  • UI: Improve the error message.
  • UI: Default topics for the mqtt plugin will be generated based on the node name.
  • UI: Use regular expressions to verify tag address.
  • The configured node will start automatically.
  • MQTT plugin configuration removes the client-id.

2.1.5 Release

26 Aug 07:55
8d9219e
Compare
Choose a tag to compare

Fixes

  • FIx the issue that the async plugin connection was abnormal, reading tag failed.

2.1.4 Release

19 Aug 08:13
244e58b
Compare
Choose a tag to compare

Fixes

  • MQTT crash when the network is abnormal.
  • When the plugin stops, the connection to the device is not disconnected.

2.1.3 Release

12 Aug 09:50
369c5fb
Compare
Choose a tag to compare

Fixes

  • MQTT plugin connection crash
  • RESTful plugin timeout crash

2.1.2 Release

28 Jul 09:24
f86e7a7
Compare
Choose a tag to compare

Fixes

  • MQTT plugin crash
  • UI cannot upload license
  • SparkPlugB plugin data exception

2.1.1 Release

22 Jul 08:56
76b8d7c
Compare
Choose a tag to compare

Fixes

  • Fix mqtt plugin cpu 100%.
  • Fix the connection status of SparkPlugB plugin.
  • Fix that the data will be reported after the mqtt plugin is stopped.
  • Fix crash when Neuron starts.
  • Fix compilation warning when using gcc11.

Chores

  • UI: Remove log page.
  • UI: Improve plugin error codes.
  • Node will be disconnected from the device after it is stopped.

2.1.0 Release

28 Jun 06:25
864e428
Compare
Choose a tag to compare

Features

  • Add BACnet/IP driver
  • Add KNXnet/IP driver
  • Add DLT645-2007 driver
  • Add SparkPlugB APP
  • Connection supports serial ports
  • Integrated data processing engine
  • Tag adds a description field
  • Introduce zlog, a different log file for each node log output, and limit the log file size
  • Delete the stdatomic.h dependency to support Linux use in lower version of the kernel
  • Supports tag acquisition value failure, which defaults to 30 times group interval
  • Tag names detect duplicates in group and no longer in nodes.
  • IEC60870-5-104 supports reading the types of data that the device actively reports.
  • Node is not running, and the read/write request returns an error.

HTTP API

Remove all ids used in the API and replace the id with name.
  • Simplify the node type as APP and DRIVER

  • DataType map:

    • INT8 = 1

    • UINT8 = 2

    • INT16 = 3

    • UINT16 = 4

    • INT32 = 5

    • UINT32 = 6

    • INT64 = 7

    • UINT64 = 8

    • FLOAT = 9

    • DOUBLE = 10

    • BIT = 11

    • BOOL = 12

    • STRING = 13

    • BYTES = 14

  • Add GET /api/v2/version, get the neuron version

  • Replace /api/v2/gconfig with /api/v2/group

  • Modify API

    • /api/v2/node
    • /api/v2/group
    • /api/v2/tag
    • /api/v2/plugin
    • /api/v2/subscribe
    • /api/v2/read
    • /api/v2/write
    • /api/v2/node/setting
    • /api/v2/node/ctl

Refactor

  • The adapter distinguishes between app and driver types and handles different msg.
  • The core/manager does not manager group and tag, but is managed by adapter(driver) for group and tag.
  • The core/manager and adapter use the Actor model to process transactions.
  • Removed the locks used in core/manager and adapter.
  • The subscription relationship is managed by core/manager and drivers are no longer notified to have subscriptions or unsubscribes.
  • After configuring the group and tag in the driver, the driver will start reading tag from this group and no longer wait for an app to subscribe to this group.

Fixes

  • When an incomplete message packet is received from tcp, the packet is not processed, causing the reading tag fail. (IEC60870-5-104, S7COMM, FINS)
  • QnA 3E read assert.
  • OPC UA connection PLC failed.
  • When delete a group, the group is not completely deleted.
  • FINS: Some of the messages that the PLC returned out-of-order data were not processed by neuron.
  • Memory corruption causes group names to appear garbled.
  • Memory leak in core/manager, adapter, driver

Build and Compile

  • Define projects using the C99 standard
  • Remove vector and libcsptr.
  • When compiling the debug version, only the -fsanitize=address parameter of libasan is used.
  • Remove the use of stdatomic.h

2.0.1

05 May 07:15
25a3028
Compare
Choose a tag to compare

Features

api supports the use of different keys to authenticate jwt

2.0.0

22 Apr 10:53
2876483
Compare
Choose a tag to compare

Features

  • Add eKuiper plugin
  • mqtt adds upload data format

Refactor

  • adapter type(driver, data, config)
  • mqtt key and cert store
  • events replaces while loop in adapter_loop

2.0.0-rc.1

02 Apr 11:04
9718cbd
Compare
Choose a tag to compare

Changes

  • replace the tag id in the read/write api with tag name
  • replace the node id in the read/write api with node name
  • replace the tag id in the mqtt upload msg with tag name

Fixs

  • mqtt read/write crash
  • api read/write crash