Commit Graph

39 Commits

Author SHA1 Message Date
gc87 ebe450e303 Read and write Modbus driver through MQTT driver
1. Add config cmd to neu_manager
2. Modify MQTT driver to read and write
3. Fix modbus response
2021-08-28 16:43:47 +08:00
fengzero 1be8327439 read/write fixed value for demo 2021-08-28 14:15:04 +08:00
fengzero e09963911d Add unit test for modbus point
sort modbus point for optimizing read efficiency
read modbus point(coil, input, hold reg, input reg)
write modbus point(coil, hold reg)
2021-08-27 17:04:15 +08:00
Parker Liu 7d6cd69c2e Add a waiting for get group configs in sample app plugin 2021-08-27 16:47:14 +08:00
fengzero 8194e2b2c7 Add write operation for modbus tcp, and process NEU_REQRESP_READ_DATA/NEU_REQRESP_WRITE_DATA
NEU_REQRESP_READ_DATA:
	interval > 0: just parse modbus point
	interval ==0: read modbus point
2021-08-26 15:39:34 +08:00
Parker Liu 0013a64ba3 Fix issue of mqtt plugin can't get databuf response from driver
* Sometimes add subscription pipe to group config will be executed before
  bind adapter, the wrong pipe will be subscribe in group config. So we
  wait for complete binding adapter and then add subscription pipe.
* Fix issue of failed to build with gcc 10.3.0
2021-08-26 14:26:33 +08:00
fengzero 8f72ec0c7e refactor: modbus tcp read point
use point module process modbus point order
remove timerfd epoll
2021-08-25 18:38:39 +08:00
Parker Liu 9c42cdea41 Fix failed build in macOS by remove using epoll
The modbus tcp plugin can not work good because we use replace some functions
with empty function.
2021-08-25 16:24:28 +08:00
gc87 11f7141af2 Improve MQTT driver and Variable
1. Variable array serialization and deserialization support
2. Variable basic data type setting
3. Variable export function unit test
4. Integrate MQTT and Variable
5. Delete the work queue in the MQTT driver
2021-08-25 12:10:30 +08:00
fengzero 2707499b17 remove tcp epoll, add modbus tcp plugin
send/receive data synchronously
2021-08-25 11:38:06 +08:00
Parker Liu f14dadb4e3 Add support sync command of add/del/update node and group config
* Support these sync command in adapter.c
* Add some interface functions in neu_manager.c to support these command
* Add enum type of error code for neuron
2021-08-24 19:21:57 +08:00
fengzero 2abc5a6f27 Add tcp for connecting device and add modbus tcp plugin
*use epoll process tcp connection
*define modbus protocol struct and pack function
2021-08-24 11:52:22 +08:00
Parker Liu c5681f6dfc Add sample code for get nodes/grp_configs/tagtable command
* Move source files of datatag table and tag group config to base
* Fix memleak when execute command of get nodes/grp_configs/tagtable
2021-08-20 15:48:24 +08:00
Parker Liu 5ba72cefb6 Add a sender adapter id for command message
* Change the node_id to dst_node_id in plugin request
2021-08-19 16:12:46 +08:00
Parker Liu 0a82c55dab Implement a static plugin of default dashboard in rest.c 2021-08-18 17:46:57 +08:00
gc87 8ece52398e Improve the connection stability of paho client
* Change Modify the subscription list from vector to list.
* Fix the problem of reconnection block.
* Refactor connection_lost_callback function.
2021-08-18 16:08:03 +08:00
fengzero d46411f08a Del unused file 2021-08-18 07:47:37 +00:00
Parker Liu 401228fd36 Add support static plugin in plugin manager 2021-08-18 15:01:36 +08:00
fengzero 7c0fb80928 Add login api
user management and jwt have not yet been implemented
2021-08-18 10:22:41 +08:00
gc87 1cd7b4877e Simple implementation of using MQTT commands to control the reading and writing of neuron drive data. 2021-08-15 08:08:36 +08:00
Parker Liu c791bc301a Add support write data command and dispatch transfer data
Support the write data command in sample plugin, adapter and manager.
Add the default subsribe pipes for dispatch transfer data.
2021-08-13 17:13:31 +08:00
gc87 973e0b234f Simple implementation of variable serialize and deserialize and Use list instead of vector to implement task queue. 2021-08-13 17:12:25 +08:00
Parker Liu 62b35e1285 Add some request/resposne/command for adapter and plugin
Add structure definition for request/response/command, add get nodes
function and get group configs function in manager.
2021-08-12 19:29:25 +08:00
fengzero e10dea4051 parse read/write 2021-08-12 15:59:14 +08:00
Parker Liu f981f00908 Change malloc.h to stdlib.h for success build in macOS 2021-08-11 18:20:47 +08:00
fengzero 636afc8e18 rest server 2021-08-11 18:11:40 +08:00
Parker Liu e699329d14 Add sample app plugin and add message dispatcher
Add some message/request/event for improvement transfer data
2021-08-11 16:11:32 +08:00
gc87 5a98c57d7d Imporve MQTT client and add task queue. 2021-08-11 15:39:47 +08:00
fengzero f38f049ebd refactor dependent libs 2021-08-09 09:30:55 +00:00
gc87 4229a7c283 Implementation of MQTT plug-in. 2021-08-09 14:20:57 +08:00
fengzero 33a6fb5292 debug compile with libasan 2021-08-04 17:19:08 +08:00
Parker Liu 520130243d Change the config of clang-format for AlignAfterOpenBracket 2021-08-03 14:48:57 +08:00
gc87 4ad524d908 Format code. 2021-07-23 11:15:15 +08:00
gc87 bd03d877df Fix the constant expression problem of gcc. 2021-07-23 10:52:32 +08:00
Parker Liu 34f2663033 Change the source code style by clang-format 2021-07-22 18:55:24 +08:00
Parker Liu 9eded28ee5 Add some message types and reqresp types for read data from plugin 2021-07-16 14:41:21 +08:00
Parker Liu daae61d8f1 Add functions of transfer message and some associated structures. 2021-07-16 14:41:21 +08:00
Parker Liu a3eeb5971e add neuron core framework files 2021-07-16 14:41:21 +08:00
joey8869 0c41b45651 basic type definition 2021-06-28 10:53:11 +08:00