1
0
Fork 0
Commit graph

56 commits

Author SHA1 Message Date
Janez
82c95a2bc9 Format comments in the .c files. 2024-07-06 21:48:21 +02:00
sicris
91653819e7 + added CANopenNode ESP32 device support for ESP-IDF framework 2023-12-07 12:12:07 +01:00
Janez
b0b0724c6f Node guarding added 2023-09-07 16:58:04 +02:00
Janez
90950be0e4
Update deviceSupport.md 2023-03-28 18:07:45 +02:00
ttmut
4d7afa6fa3 Add link to ADI homepage 2023-02-17 13:28:31 +03:00
ttmut
ce9f99950d Update information on Analog Devices MAX32xxx MCUs 2023-02-13 15:34:27 +03:00
ttmut
d4393e4cc6 Add Analog Devices MAX32xxx support
Add support for Analog Devices MAX32662 and MAX32690 microcontrollers.
2023-02-02 10:44:21 +03:00
Chris Burghart
2c97ff7f4c
Fix a small typo 2022-07-18 10:37:47 -06:00
Janez
598a2bb25f Update documentation and Doxyfile 2021-06-28 14:51:51 +02:00
Janez
cdad71beee Fix reading OD entry 1003,0, etc. 2021-06-26 13:35:43 +02:00
Janez
f56c96db3c Documentation arrangement according to doxygen.
- Minor changes in most files
- add CANopenNode.png
- update doxyfile
- move doc/LSSusage.md and doc/gettingStarted.md into CANopenDemo repository
- update README.md
2021-05-17 13:29:13 +02:00
Janez
d9af9b04d0 Driver for Linux (socketCAN directory) moved to own repository.
New repository is https://github.com/CANopenNode/CANopenLinux.
2021-05-07 23:00:14 +02:00
Janez
66d0e14ef4 301/CO_PDO.h/c updated to newOD. 2021-03-18 15:13:06 +01:00
Janez
fc81777097 Pass CO_CANmodule_t argument to all the CO_LOCK_...() and CO_UNLOCK_...() macros.
https://github.com/CANopenNode/CANopenNode/issues/162#issuecomment-777438875
2021-03-02 21:28:22 +01:00
Janez
88558203a0 Linux socketCAN driver, fix CANsend().
There was a problem with block transfer, when transmitting sequence of
data. If CANsend() failed (socket buffer full), message was dropped.
Now dropped message is marked with bufferFull flag and then it is
re-transmitted later by the driver, as is in the original behaviour of
CANopenNode. Same as commit acd719e27 in v2.0.
2021-02-08 17:01:55 +01:00
Janez
3ee8725036 Simplify Data Storage
- remove CO_storage from CANopen.h/c (revert)
- add target specific CO_storage_entry_t into CO_driver(_target).h
2021-02-01 15:24:37 +01:00
Janez
9dce037ecb Add data storage, common and Linux specific functions, tested in Linux. 2021-01-25 12:42:10 +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
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
8e2de726a5 works also with globals 2020-10-27 13:13:13 +01:00
Janez
ace840fa6c Fix ODinterface, basic tests passed. 2020-10-26 18:16:00 +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
f142e893ad Can run in single thread in Linux. 2020-09-29 12:46:02 +02:00
Janez
3460e01e1c Merge branch 'master' of https://github.com/CANopenNode/CANopenNode 2020-09-29 10:13:53 +02:00
Henrik Brix Andersen
7fe0555606
Update documentation with further details on the Zephyr RTOS support (#230) 2020-09-29 09:58:31 +02:00
Janez
23bc5d38a7 Reorganize socketCAN/CO_Linux_threads
- 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
2020-09-29 09:00:31 +02:00
Janez
6cdc70fb4e Object dictionary interface, preview updated. 2020-09-19 09:58:49 +02:00
Janez
e79ed1709e Update documentation 2020-07-13 14:07:26 +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
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
ae1b66e6ea Gateway - command interface: update help strings, add status LED indication 2020-06-06 08:07:26 +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
92a803f169 Add LSS master into gateway-ascii (CiA309).
- Rename local variable 'token' into 'tok' in CO_GTWA_process().
- CO_LSSmaster: replace CO_LSSmaster_InquireNodeId() with more generic
  CO_LSSmaster_Inquire(). CiA309-3 command 'lss_inquire_addr' now works
  also according to standard.
- CANopen.h: fix doxygen.
- gettingStarted.md: Change example "master" device from node-Id=3 to 1...
2020-05-31 14:31:30 +02:00
Janez
c1a30b8a03 Some style corrections
- add CO_fifo_st enumerator for use in CO_fifo_cpyTok2xx functions.
- 309/CO_gateway_ascii: add x8 to x64 nonstandard data types
- example compiles now
- Fix "unused argument" warnings in socketCAN
2020-05-15 15:52:22 +02:00
Janez
b5bfeec42a Added CANopen gateway-ascii command interface according to CiA309-3 as a
microcontroller independent module.
It includes NMT master, LSS master and SDO client interface.
Interface is non-blocking, it is added to mainline.
Example for Linux stdio and socket is included.

Added CO_fifo.h/c for fifo data buffer, used with rewritten SDO client, etc

SDO client is rewritten. Now includes r/w fifo interface to transfer data.

doc/gettingStarted.md is updated.
2020-05-12 18:11:43 +02:00
Freddie Chopin
495f827d37 Fix minor typo/edit mistakes in CHANGELOG.md and CO_config.h 2020-05-06 18:00:28 +02:00
Janez
5a2a1e85cf Update configuration macros. SDO state machine preview. 2020-04-29 13:12:07 +02:00
Janez
06e6f343c9 Update changelog 2020-04-27 12:18:47 +02:00
Janez
3fd799f919 Heartbeat is send immediately after NMT state changes. 2020-03-19 18:59:58 +01:00
Janez
794c0f903a Added file CO_config.h for stack configuration. Added CO_HBconsumer_initCallback() 2020-03-18 21:06:15 +01:00
Janez
1ce3732e60 SocketCAN: change CO_DRIVER_MULTI_INTERFACE and CO_DRIVER_ERROR_REPORTING
- Replace macro USE_EMERGENCY_OBJECT with CO_DRIVER_USE_EMERGENCY 1
- Now define sets macro to 0 or 1. It is easier to set custom value.
2020-03-12 16:20:40 +01:00
Janez
e6b4c1f5b1 socketCAN now compiles and runs. 2020-03-12 08:38:58 +01:00
Janez
02e2cc5860 Stack configuration added do CO_driver.h
Change macro CO_USE_LEDS -> CO_CONFIG_NMT_LEDS 1
Change macro CO_SDO_BUFFER_SIZE -> CO_CONFIG_SDO_BUFFER_SIZE
2020-03-07 16:26:52 +01:00
Janez
b49907f133 Update docs 2020-03-06 11:34:30 +01:00
Janez
9d17b0d671 socketCAN driver:
- Always enable CANptr and timestamp info in CO_CANrx_t.
- Update documentation
2020-02-29 22:34:48 +01:00