After adding -Wshadow to build options, gcc produced following warning:
305/CO_LSSslave.c: In function ‘CO_LSSslave_receive’:
305/CO_LSSslave.c:114:30: warning: declaration of ‘valSw’ shadows a
previous local [-Wshadow]
114 | uint32_t valSw;
| ^~~~~
305/CO_LSSslave.c:76:22: note: shadowed declaration is here
76 | uint32_t valSw;
| ^~~~~
The user may decide whether he/she wants one common callback for all
monitored nodes (CO_CONFIG_HB_CONS_CALLBACK_CHANGE) or maybe separate
callbacks configured individually for each monitored mode
(CO_CONFIG_HB_CONS_CALLBACK_MULTI). These options cannot be set
simultaneously.
This change is related to the discussion in #237
* Implement a better solution for #229
Instead of playing with incrementing pointers in various places it is
better to just set it once at the start of loop.
* Make "remote NMT changed" callback of HB consumer node-specific
This way "remote NMT changed" callback is much more similar to other
"multi" callbacks of HB consumer, and it was node-specific anyway, as
you have to first configure the monitoring node to have that callback
executed.
This change breaks the API.
* Merge CO_CONFIG_HB_CONS_CALLBACK_CHANGE with ..._HB_CONS_CALLBACK_MULTI
These settings are now very similar, so there's no need to have two
separate config options.
This change breaks the configuration API.
- Rename files to CO_epoll_interface
- Object oriented, more flexible, separate functions
- move epoll, timerfd and eventfd system calls from CO_driver.c to CO_epoll_interface.c
- rearranged and better documented
- default values moved from CO_driver.h into appropriate files
- rearranged also in CO_driver_target.h files
- parts of the stack or whole objects can be disabled.
- configuration is verified for depencies
Additional:
- renamed some members of CO_Default_CAN_ID_t
- moved helpers CO_setUint32() etc from CO_SDOserver.h into CO_driver.h.
- change wrong CO_ERROR_PARAMETERS to CO_ERROR_ILLEGAL_ARGUMENT.
- renamed CO_ERROR_PARAMETERS to CO_ERROR_OD_PARAMETERS
Before this patch SDO queue process pointer could overrun receive pointer on receiving NMT stop command during active SDO communication.
This fix is applied to 'master' and 'v1.3-master' branches.
* CANopen Safety (SRDO according to DIN EN 50325-5:2016)
* GFC code and docs
* clang-format on GFC
* SRDO tx and rx extension
added CANopen Safety to README.md
allow manual SRDO transmit
some minor bug fixes
Co-authored-by: rg1 <r.gruening@miunske.com>
When CO_CONFIG_GTW_ASCII is not enabled in configuration, this module
produces multiple important warnings, like 2 warnings about implicit
function declaration. Instead of making the source more complex and
fixing each warning individually, in this case it is much easier to just
completely disable compilation of the whole thing.