Wykres commitów

68 Commity (1bac78fbc3fa32384dcc73537daff85ece1c4e9a)

Autor SHA1 Wiadomość Data
Alex Lisitsyn ea646a9c22 freemodbus: remove component files from esp-idf (backport v4.4) 2022-12-22 17:05:55 +08:00
Alex Lisitsyn 76bde2df72 modbus: update to support other targets (Backport v4.4) 2022-06-20 15:34:06 +08:00
aleks d7fafdc916 freemodbus: fix port enable disable sequence for tcp master and slave 2022-03-08 10:07:19 +01:00
aleks ba9c0c29a9 modbus: fix tcp slave destroy issues
Closes https://github.com/espressif/esp-idf/issues/8211
2022-03-08 09:52:54 +01:00
Jiang Jiang Jian 5ff09f0a06 Merge branch 'bugfix/modbus_allow_address_gaps_in_master_data_dict_v44' into 'release/v4.4'
freemodbus: allow address gaps in master data dictionary (support of UID field in MBAP) (backport v4.4)

See merge request espressif/esp-idf!16896
2022-02-17 08:38:57 +00:00
Alex Lisitsyn d2399f6d8c freemodbus: allow address gaps in master data dictionary (support of UID field in MBAP) (backport v4.4) 2022-02-17 08:38:56 +00:00
aleks e26318bcac freemodbus: fix port contains lgpl licensed files
Initial version of freemodbus master port files have been added to ESP-IDF based on https://github.com/armink/FreeModbus_Slave-Master-RTT-STM32.
The overall repository license, at the time of adding these files, has been BSD 3-clause. However at that time, several port files carried LGPL license headers. As the author of these files confirmed in https://github.com/armink/FreeModbus_Slave-Master-RTT-STM32/issues/61#issuecomment-977828450, this wasn't intentional. ESP-IDF version of modbus master port has been rewritten to target FreeRTOS instead of RT-Thread, but the license headers remained from the original version. This commit corrects this, replacing the license of these files with BSD 3-clause.
2022-02-08 12:43:08 +01:00
Michael (XIAO Xufeng) e093575e39 freemodbus: fixed timer config struct not initialized issue (v4.4) 2021-12-23 17:15:00 +00:00
Alex Lisitsyn c965b48e77 freemodbus: fix TCP stack/examples reinitialization sequence 2021-09-17 19:13:48 +08:00
Alex Lisitsyn 5944433424 Merge branch 'bugfix/modbus_allow_master_slave_work_simultaneously' into 'master'
freemodbus: fix issues when modbus master and slave work simultaneously

fix slave destroy bug when master and slave init simultaneously
add additional timer group options for master (https://github.com/espressif/esp-idf/issues/4699)

Closes IDF-3012 and IDFGH-2619

See merge request espressif/esp-idf!12961
2021-08-13 14:46:17 +00:00
Alex Lisitsyn 9693ef4918 freemodbus: fix issues when modbus master and slave work simultaneously
fix slave destroy bug when master and slave init simultaneously
add additional timer group options for master
fix master and slave use the same timer group index (https://github.com/espressif/esp-idf/issues/4699)
2021-08-13 22:46:09 +08:00
Alex Lisitsyn a20df743f1 Merge branch 'bugfix/modbus_fix_compiler_err_when_tcp_is_disabled' into 'master'
Bugfix/modbus fix compiler err when tcp is disabled

Closes IDFGH-5019 and IDFGH-5376

See merge request espressif/esp-idf!13010
2021-08-12 14:39:26 +00:00
Alex Lisitsyn 1aa7f27468 add compile time checks for MB_MASTER_TCP_ENABLED
Signed-off-by: AshUK <github.AshUK@outlook.com>
2021-08-12 22:39:21 +08:00
aleks 60ac95a6b2 freemodbus: fix invalid error handling for duplicate param_key 2021-08-09 14:32:22 +02:00
aleks 9457555173 freemodbus: potential loss of significant bits and auto merge issues 2021-07-29 13:33:42 +08:00
aleks dfcc434910 freemodbus: add affinity option for modbus stack tasks
Closes https://github.com/espressif/esp-idf/issues/6700
2021-07-22 13:15:24 +08:00
Alex Lisitsyn c801b3a182 freemodbus: fix uart_wait_tx_done() reenable tx_done interrupt
fixes the issue with uart_wait_tx_done() when the task is suspended and transmission is done right before reenable tx_done interrupt
2021-07-21 10:07:44 +08:00
aleks 59935e44c0 freemodbus: increase max priority of modbus tasks
allows to avoid issues with modbus processing when higher priority tasks are used in user application
2021-05-06 14:32:40 +08:00
aleks 868e123336 freemodbuss: fix event processing after merge 2021-03-15 09:45:49 +01:00
aleks 0d3f19beea freemodbus: fix mb zero based reg address in the iterator
Fixes https://github.com/espressif/esp-idf/issues/6571
2021-02-25 15:17:45 +01:00
yuanjm da58235a0e components: Use CONFIG_LWIP_IPV6 to strip IPv6 function in components 2021-02-23 18:26:03 +08:00
aleks b554d4d34d freemodbus: fix mb controller parity propagation issues
Closes https://github.com/espressif/esp-idf/issues/6377
2021-02-15 08:39:18 +01:00
David Cermak 898cac0061 modbus: Exit server task gracefully to correctly cleanup lwip internals
Current lwip implementation does not support deleting a task which is
actively waiting on `select()` or `poll()` API.
Therefore we have to make sure that `select()` exits to deallocate its internal
callback before deleting the task. This is achieved by a shutdown
semaphore which informs the client once the `select()` exitted.

fix slave
2021-02-10 13:12:54 +00:00
Marius Vikhammer 04df1f3a42 CI: enable example builds for C3
Enables building C3 examples in CI.

Fixes related warnings/errors and disables examples that cannot run.
2021-02-09 12:04:02 +08:00
Alex Lisitsyn 96b77a28b1 freemodbus: add support for list of area descriptors for each register area
add multi register area descriptors into concrete port (initial)
add create/destroy of area descriptors into concrete port
add  the list of descriptors in common slave interface structure and init/destroy in concrete slave port
move r/w callback functions into common slave
final update of common slave interface wrappers add override API option in concrete port
update slave examples to check new  feature
2021-01-28 12:29:32 +08:00
Marius Vikhammer 0301c66bf0 esp32c3: Disable components that are not yet supported 2020-12-31 09:27:38 +11:00
Angus Gratton 66fb5a29bb Whitespace: Automated whitespace fixes (large commit)
Apply the pre-commit hook whitespace fixes to all files in the repo.

(Line endings, blank lines at end of file, trailing whitespace)
2020-11-11 07:36:35 +00:00
Marius Vikhammer 9b552ce004 docs: add warning for doxygen version
Running with a newer doxygen version than what's
used in CI may raise warnings locally that are not
present when built by CI
2020-09-03 13:48:40 +08:00
Alex Lisitsyn d0b9829eef examples: freemodbus add tcp support for common master/slave iface
Add TCP port files to provide Modbus TCP interface for communication
Add freemodbus add tcp support for common master/slave iface and tcp example based on socket API
The communication between master and slave checked for each example serial_master, serial_slave (use ModbusPoll TCP)
update tcp example according netif changes, fix ci issues
update TCP slave implementation
update example_test.py to to set IP through stdin
update API documentation
event bit instead of semahore to lock communication resource
update default options and master/slave port files

Closes https://github.com/espressif/esp-idf/issues/858
Closes IDF-452
2020-07-22 00:34:04 +08:00
aleks 30e97e0920 freemodbus: fix memcmp result truncated to 1 byte
Coverity ID: 291158
2020-06-18 12:33:02 +02:00
Alex Lisitsyn b28b62b194 freemodbus: fix fragmented response frame causes next value fail
drop uart ll driver fix: soc: prevent speculative reads from FIFO at -O2 optimization
(new compiler fixes this issue)
2020-06-15 15:20:42 +08:00
aleks 3bbdfb75ad freemodbus: fix event processing failure after destroy
Closes https://github.com/espressif/esp-idf/issues/5275
2020-05-13 15:59:36 +02:00
Alex Lisitsyn b1fe4c4cc6 freemodbus: add extern c block into common header for cpp 2020-04-17 17:56:50 +08:00
Alex Lisitsyn 3abdd2207d freemodbus: fix long buffer failure
check master read write functions with array of registers)
fix master serial processing code and modbus controller to work with register array
modbus_master: add reading and writing of test value array (58 registers) to check failure is gone
remove parameter temporary buffer from modbus controller to allow more than 24 byte writes
driver: fix issue with TOUT feature
driver: fix uart_rx_timeout issue
driver: fix issue with rxfifo_tout_int_raw not triggered when received fifo_len = 120 byte and all bytes read out of fifo as result of rxfifo_full_int_raw
driver: add function uart_internal_set_always_rx_timeout() to always handle tout interrupt
examples: call uart_internal_set_always_rx_timeout() to handle tout interrupt correctly
examples: update examples to use tout feature
driver: reflect changes of uart_set_always_rx_timeout() function, change uart.c
driver: change conditions to trigger workaround for tout feature in uart.c
driver: change uart_set_always_rx_timeout()
freemodbus: fix tabs, remove commented code
driver: remove uart_ll_is_rx_idle()
2020-03-30 22:05:48 +08:00
Angus Gratton 11fac8637a docs: Resolve doxygen & Sphinx warnings 2020-02-07 16:37:45 +11:00
Felipe Neves 429712c6eb freertos: moved all xtensa specific files into a separated folder 2020-01-27 16:05:30 -03:00
Alex Lisitsyn ba1ee4092a freemodbus: fix merge issues 2019-12-10 14:30:25 +08:00
Alex Lisitsyn 44444208b7 freemodbus: update poll event processing
update modbus poll event loop processing to process multiple events
2019-12-10 14:27:09 +08:00
Angus Gratton ecaf816c0b Merge branch 'bugfix/freemodbus_fix_clang_warnings' into 'master'
freemodbus: fix clang warnings of freemodbus stack

See merge request espressif/esp-idf!5193
2019-11-28 07:06:19 +08:00
houwenxiang f27ae9b0e2 feature: Add uart hal support. 2019-11-26 20:01:50 +08:00
aleks 6e14b6265b freemodbus: fix merge issues 2019-11-26 11:25:12 +01:00
aleks cf4c95532f freemodbus: fix clang warnings 2019-11-26 10:37:14 +01:00
Alex Lisitsyn 67f62a79c1 freemodbus: add modbus master ascii
add support of modbus master ascii
rename base dir name of master and slave example to be mb_slave, mb_master to avoid conflict with sdio/slave example test
add Kconfig option to enable ASCII and RTU mode separately
update ASCII options + remove cast for errors
added baudrate for examples into Kconfig
updated magic numbers for timer timeout
put ascii private definitions into one file
2019-11-26 13:16:25 +08:00
chenjianqiang 9f9da9ec96 feat(timer): refator timer group driver
1. add hal and low-level layer for timer group
2. add callback functions to handle interrupt
3. add timer deinit function
4. add timer spinlock take function
2019-11-21 14:14:19 +08:00
Alex Lisitsyn cfdd5f0ef7 freemodbus: configure timer handler placement
place timer interrupt handler into flash by default;
add default settings for timer and UART interrupts to place them into IRAM into example defaults;
CONFIG_FMB_TIMER_PORT_ENABLED default = n, when enabled, the UART_ISR_IN_IRAM set to y
2019-11-12 22:16:55 +08:00
Alex Lisitsyn 1ab9e81729 freemodbus: fix nvs access failure
place timer handler functions into IRAM
update timer port handlers
fix communication issues
fix offset issue in example
add kconfig option to place handlers into IRAM
2019-11-08 16:55:42 +08:00
Alex Lisitsyn 4bac558ab3 freemodbus: fix a bug with destroy function of modbus controller and fix port destroy functions
adds timer interrupt handle and free it in vMBXXXPortTimerClose() in master and slave timer port
assign modbus controller interface pointer to NULL in destroy function after free
2019-10-31 23:23:24 +08:00
Angus Gratton 6990a7cd54 Merge branch 'master' into feature/esp32s2beta_update 2019-08-19 15:03:43 +10:00
Michael (XIAO Xufeng) 264ffbeb14 timer_group: use the LL 2019-08-09 13:46:31 +08:00
Angus Gratton 04ae56806c Merge branch 'master' into feature/esp32s2beta_update 2019-08-08 15:26:58 +10:00