Janez
04ca686fd8
OD_interface, getter and setter helper functions simplified, #162
2021-01-07 08:36:45 +01:00
Janez
51d64df860
OD interface simplified #162
...
OD_extension is now configurable by application only.
2021-01-07 08:34:53 +01:00
Janez
7b5de9f383
Replace type char with uint8_t, where appropriate.
...
Fix typos and clarify CO_ODinterface.
Remove unnecessary types from CO_driver.h.
2021-01-05 12:27:22 +01:00
Janez
267a2dafb2
Replace type char with uint8_t or int8_t, where appropriate
...
305/CO_LSS.h now passing -Wextra warnings
2021-01-05 09:22:19 +01:00
Janez
d62de8dc64
Minor updates
2020-12-28 13:23:57 +01:00
Janez
9e9fce74a9
Updates and testing of OD interface, SDO server, SDO client, gateway, etc.
...
- SDO server: Change behavior for string data type + fixes + test all
- SDO client: fixes + test all
- OD interface: Special behavior for string data type
- CO_driver.h: added default debug configuration macros + fix spelling
- Gateway + fifo: added base64 support + updates
- CO_CANopenInit() - added arguments.
- update some documentation
- CO_epoll_interface fixes.
- CO_main_basic.c updates
2020-12-24 14:15:10 +01:00
Janez
09bf926856
CO_ODinterface - Change some API:
...
- Add OD_getPtr_vs(), OD_getPtr_os() and OD_getPtr_us().
- Move read/write from OD_subEntry_t into OD_IO_t structure.
- Change argument in OD_getSub(), use OD_IO_t instead OD_stream_t.
- OD_getSub(), argument subEntry is optional.
- Change return value of OD_extensionIO_init() to ODR_t.
2020-12-02 16:44:31 +01:00
Janez
a6ce313387
New Object Dictionary project file, etc. Remove old OD. Update doc.
2020-11-28 12:17:48 +01:00
Janez
5a14e91834
Set CANopenNode version V4.0
...
Skip V3.0, because there exists some old version numbering from SouceForge.
V3.00 exists also in old CO_OD.c. Use 4.0 to avoid confusion.
2020-10-29 09:58:26 +01:00
Janez
da850252bd
Set CANopenNode version V3.0
...
Added macros CO_VERSION_MAJOR and CO_VERSION_MINOR into driver.h
2020-10-29 09:38:21 +01:00
Janez
ee1d8d0c81
Restore CO_CONFIG_HB_CONS_CALLBACK_CHANGE option, same as #241
2020-10-26 19:05:26 +01:00
Janez
ace840fa6c
Fix ODinterface, basic tests passed.
2020-10-26 18:16:00 +01:00
Janez
0e317dddf3
Add CO_errinfo() into CO_driver.h and driver_targets.
...
Add additional error info for 'CO_ERROR_OD_PARAMETERS'.
2020-10-26 18:05:47 +01:00
Janez
cf9fb2a547
Some updates in OD interface.
...
It matches newly generated OD.h and OD.c files from libedssharp
2020-10-21 11:29:03 +02:00
Janez
f73025ef65
CANopenNode V2.0 pre-release
2020-10-07 17:50:25 +02:00
Janez
7a43f98f24
Configuration macros updated
2020-10-07 13:47:07 +02:00
Janez
1385c763aa
small fix
2020-09-29 12:26:26 +02:00
oto313
ffa92310a7
Update CO_HBconsumer.c ( #229 )
...
When current node is CO_HBconsumer_UNCONFIGURED then other nodes are skipped
2020-09-29 09:50:18 +02:00
Wilkins White
28925a4e3c
Add CO_SYNCsend() ( #225 )
...
* add CO_SYNCsend function
* change return type of CO_TPDOsend
2020-09-29 09:24:21 +02:00
Carsten Frank
87b293b3e6
Do ErrorReset of SYNC timeout ( #220 )
2020-09-29 09:19:06 +02:00
Janez
6cdc70fb4e
Object dictionary interface, preview updated.
2020-09-19 09:58:49 +02:00
Janez
9446aa5792
CO_TIME.c can be disabled
2020-09-14 16:49:48 +02:00
Janez
4b855d04f7
CO_TIME.c can be disabled
2020-09-14 16:45:05 +02:00
Janez
a528eb1669
Better organised configuration macros (CO_config.h):
...
- 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
2020-09-14 15:50:21 +02:00
Miles Simpson
2c5d685343
Differentiate between SDO_C states so state can be determined in a worker thread when passed a CO_SDOclient_t pointer ( #218 )
...
Added #defines for SDO state flags for use by applications
Changed CO_SDO_ST_ABORT to next sequential value
2020-08-11 11:55:12 +02:00
Janez
8783bfff05
use crc16-ccitt.h in CO_fifo.c
...
It was duplicated.
Commited also some small changes + ODinterface
2020-08-04 23:39:25 +02:00
Janez
2d07d7af17
OD interface: remove "lowLimit" and "highLimit"
...
Too complicated to implement and litmited usefulness. IO extension is better.
2020-07-25 13:17:01 +02:00
Janez
748086a751
Move enumerator CO_SDOclient_return_t to CO_SDO_return_t
...
(from CO_SDOclient.h into CO_SDOserver.h)
2020-07-24 10:10:05 +02:00
Janez
1410a20e95
Replace CO_memcpySwap4()
2020-07-23 13:37:50 +02:00
Janez
756c76d08a
Added information about XML device description
2020-07-23 07:34:28 +02:00
Norcio
03df5f65b8
fix for missing int cast which cause compilation warning/error when ctype,__cplusplus and esp32 is used ( #212 )
...
error: array subscript has type 'char' [-Werror=char-subscripts]
2020-07-22 07:31:56 +02:00
Janez
f68e9dade7
Fix previous commit
2020-07-14 16:28:32 +02:00
Janez
1f92aee85a
SDO: fix broken block download #210
...
by lukegluke, same as commit in v1.3-master
2020-07-13 15:12:40 +02:00
Janez
d98fb635f5
Added CO_ODinterface
2020-07-13 14:08:16 +02:00
Janez
e79ed1709e
Update documentation
2020-07-13 14:07:26 +02:00
Janez
035da160b5
SDO: fix to always check if buffer is empty before freeing it #204
...
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.
2020-07-01 09:44:18 +02:00
Janez
9dd36aa649
Manual merge #202 :
...
- fix conflicts in CO_SRDO.h and CO_SRDO.c
- Add configs for GFC & SRDO for CO_driver.h and not for socketCAN
- Fix doxygen for CO_gateway_ascii
2020-07-01 09:02:40 +02:00
Freddie Chopin
7c13199a1a
Fix all possible warnings about unused timerNext_us argument
2020-06-26 11:56:46 +02:00
gotocoffee
0f7b3e2d17
CANopen Safety (SRDO according to DIN EN 50325-5:2016) ( #196 )
...
* CANopen Safety (SRDO according to DIN EN 50325-5:2016)
* GFC code and docs
* clang-format on GFC
Co-authored-by: rg1 <r.gruening@miunske.com>
2020-06-22 10:14:14 +02:00
Janez
aed6a472d4
LSS led flickering fix.
2020-06-14 12:35:42 +02:00
Janez
ca452c47cc
CO_driver interface: remove Emergency object dependency for reporting CAN
...
errors, use CANerrorStatus own variable instead. Emergency object updated.
2020-06-13 14:06:35 +02:00
Janez
e1c7e2dbfa
Add fifo queue for SDO received messages to fix possible drops
...
Same as pr #174 in v1.3-master
2020-06-11 10:33:03 +02:00
Paolo Teti
6551233406
GCC 10: Fix dereference of NULL warning ( #191 )
...
GCC 10 static analyzer (-fanalyzer) warn about possible dereference
of NULL ‘ext’ on 'ext->pODFunc'.
This patch adds a guard on 'ext' to fix the issue.
2020-06-09 17:11:09 +02:00
Janez
dd1677b5bc
Integrate LSS slave into CANopenNode more directly.
...
- CO_LSSslave: move expensive code from CAN receive (interrupt) to mainline
CO_LSSslave_process() function.
- LSS slave now runs in parallel to other CANopen objects.
- LSS slave and master can run both on same device.
- LSS slave, LSS master and gateway-ascii(CiA309) LSS functions tested.
- LSSusage.md updated.
2020-06-09 14:55:07 +02:00
Janez
bd3326fed9
Make own file for CANopen status LED diodesLED indicator indication
...
(CiA303-3) moved from NMT into own files. Now fully comply to standard.
2020-06-05 18:02:26 +02:00
Janez
229b5c5fd3
Change optional arguments in CO_RPDO_init(), CO_TPDO_init(), CO_GTWA_init()
2020-05-31 22:08:36 +02:00
Janez
ae220f9115
Configuration for LSS updated.
2020-05-29 09:56:05 +02:00
Janez
cb9b2cce42
Add printout of message log from CANopen gateway-ascii (non-standard).
2020-05-29 07:36:23 +02:00
Janez
f41069561a
Make SDO client and NMT master optional in gateway_ascii
2020-05-28 16:40:21 +02:00
Paolo Teti
6db813a998
TIME: fix round up conversion from usec to msec ( #189 )
...
Use standard idiom for integer rounding up.
Signed-off-by: Paolo Teti <paolo.teti@gmail.com>
2020-05-27 13:48:16 +02:00