Commit Graph

155 Commits

Author SHA1 Message Date
Andreas Karlsson 33aa7a3c57 Correct unit for dc mastertime calulcation to (ns)
The correct factor for seconds should be 1000000000

fixes #432
2020-08-16 11:25:13 +02:00
Andreas Karlsson bae37b9028 Don't always include optional IP parameter lengths
Obvious fix, the optional IP parameters length should
only be included in total length if they are included.

fixes #421
2020-08-16 11:20:10 +02:00
Pedram Nimreezi 953eb07f8a Update printf statement
Just happened to spot this
2020-05-09 13:49:17 +02:00
berkaydeniz 63d699d303 assert is removed from macos version of nicdrv.c
As discussed in Issue #392, this assert only exists for macos and is an overkill.
2020-05-09 13:46:44 +02:00
Andreas Karlsson 093311561c Limit expected working counter per ESC
Add one to the expected working counter per
ESC/Slave, not for every syncmanager/fmmu.
Use case, if the slave define more input/output
syncmanager/fmmus it still only generate maximum
working counter of 3 for a RW command.

fixes 374
2020-03-03 11:30:55 +01:00
seanyen 7fe05b5b4b Improved SOEM portability.
* Replaced CMAKE_SOURCE_DIR with CMAKE_CURRENT_LIST_DIR to make SOEM CMakeLists.txt more relocatable.
* Installed SOEM CMake config files to a more universal location to search.
2020-01-07 16:08:50 +01:00
Arthur Ketels 92ff466357 Fix ecx_pushindex, remove DCtO and DCl from ecx_context 2019-11-13 21:03:56 +01:00
Arthur Ketels 9ec8635943 Fix tx/rx processdata functions 2019-11-12 17:03:48 +01:00
Hans-Erik Floryd 2a8c07c32b
Merge pull request #348 from jjguti/feature/run-on-newer-gcc
run on newer gcc
2019-10-21 12:11:55 +02:00
Hans-Erik Floryd f8b0029765
Merge pull request #347 from jjguti/master
fix warning with strncpy on newer GCC's
2019-10-21 12:11:36 +02:00
Juanjo Gutiérrez 7bb27de2a2 testing on newer gccs and macosx
this patch adds building on ubuntu bionic that has a newer gcc while
keeping ubuntu xenial (default on travis-ci)

it also adds macosx since it was very easy to add and it's a platform we can build for
2019-10-20 22:27:00 +02:00
Juanjo Gutiérrez cffd3ba283 fix warning with strncpy on newer GCC versions
strncpy should not be called with a "length" parameter which is based on
the source string since it negates the benefits of using strncpy. this
patch fixes the warning for linux, macosx and rtems

Fixes #346
Change-Id: Ib2fb7637e9845545e4c15045e6be7c7ce8e0672b
2019-10-18 15:31:57 +02:00
Giuseppe Iellamo 09d48acc32 Update to CMakeLists.txt 2019-10-08 14:14:47 +02:00
nakarlsson abbf0d42e3
Fix doxygen build warnings for SOEM 1.4.0 (#312)
Trvial non-code changes
2019-06-13 08:06:41 +02:00
ArthurKetels e2fc362539
Merge pull request #303 from OpenEtherCATsociety/feature/soem_140
Feature/soem 140
2019-06-12 19:25:55 +02:00
Andreas Karlsson 5c71c281fc VxWorks, calculate tick receive timouts from systick, fixes #310 2019-06-12 14:50:38 +02:00
Andreas Karlsson 131158dda8 VxWorks, use monotonic clock, fixes #309 2019-06-12 14:42:26 +02:00
Andreas Karlsson 817435066f Add support to choose if manual or automatic state change is done by config functions, fixes #189 2019-06-10 11:48:41 +02:00
Andreas Karlsson cc417d4c0c Add PO2SO hook including context, fixes #230 2019-06-10 09:23:02 +02:00
Andreas Karlsson 8c1e83ee8e Add extra ERROR on mailbox receive timeout to improv diagnostics possibilities 2019-05-24 14:28:29 +02:00
Andreas Karlsson 9c921d8d4e Make ERROR slave count exceeded unique 2019-05-24 14:05:53 +02:00
Andreas Karlsson 7b1ea32343 Make it possible to set EC_VER from osal layer 2019-05-24 14:02:46 +02:00
Andreas Karlsson c892921d7e Add ec_error to string print function, fixes #227 and fixes #232 2019-05-24 14:01:40 +02:00
Andreas Karlsson 49810a5adf VxWorks: Remove usage of muxTkSend, improve abandoned frame handling. bugfix for msgQRecv return value, add cleanup on NIC close 2019-05-24 13:58:41 +02:00
Andreas Karlsson c220255604 Don't re-define TRUE and FALSE if already defined 2019-05-24 13:55:15 +02:00
Andreas Karlsson 151045ed56 Adjust Linux and Win32 application SAFEOP->OP timeouts, fixes #141 2019-05-24 13:49:10 +02:00
Andreas Karlsson b978b4cb5c Improve documentation fixes #226 and fixes #270 2019-05-24 13:43:45 +02:00
Marc Butler 812403783c Add port to macOS (#286)
* Port to macOS

This port to macOS is an amalgam of the existing Linux and Win32
ports. Consequently code is duplicated from each in this port:
primarily from win32 in oshw, and Linux is osal.

Synthesizing a shared common posix port, did not seem warranted given
the modest amount of code, and stable api.

This port uses the default pcap interface provided in the development
libraries shipped with XCode.

Limited testing on os releases: 10.13 and 10.14.

* fix possible race condition as for win32

See aed0f81724

* fix spelling as for linux / win32

See 7beba91c62
2019-05-15 07:35:31 +02:00
ArthurKetels d16d81e51b
Merge pull request #283 from Apollo3zehn/fix/windows_use_absolute_time
osal.c (Windows): Use absolute time instead of relative time.
2019-05-10 23:14:50 +02:00
Vincent Wilms 4671254849 Use absolute time on win32 for DC initialization and errors. 2019-05-10 14:54:17 +02:00
Schlumpf 787cf82d7d Add possibiliy to set endian target by hardware layer
Now it is possible to set a EC_LITTLE_ENDIAN or EC_BIG_ENDIAN in the
osal_defs.h file or by compile option. If no endian is defined, the default
EC_LITTLE_ENDIAN is used.
2019-05-10 10:19:25 +02:00
jopado1 537145f6bf Fixes for big-endian hosts 2019-05-10 10:17:46 +02:00
Claudio Scordino 29df9ba013 Add ERIKA Enterprise RTOS support
This patch adds support to SOEM for the ERIKA Enterprise RTOS
(erika-enterprise.com).

Current requirements for running SOEM on ERIKA RTOS:
 - x86-64 platform with 2+ cores
 - Xen hypervisor
 - Intel i210 PCIe Ethernet controller

Signed-off-by: Claudio Scordino <claudio@evidence.eu.com>
Signed-off-by: Luca Cuomo <l.cuomo@evidence.eu.com>
2019-05-10 08:43:18 +02:00
ArthurKetels ab89d557d5
Merge pull request #280 from OpenEtherCATsociety/fix/soemlib_undef_ec_ver1
Fix to enable building the SOEM library VER 2 with -werror
2019-04-12 10:40:27 +02:00
andreas karlsson a37a8c733e Fix to enable building the SOEM library VER 2 with -werror 2019-04-08 10:02:03 +02:00
nakarlsson 90065c08d0
Merge pull request #271 from claudioscordino/pull_request
Tutorial: explain how to access CoE SDOs and PDOs
2019-04-08 08:59:04 +02:00
ArthurKetels 5a47e61f24
Merge pull request #275 from OpenEtherCATsociety/fix/emptybuf_racecondition
Remove possible racecondition of set buf EMPTY
2019-04-01 10:45:07 +02:00
Andreas Karlsson aed0f81724 Remove possible racecondition of set buf EMPTY 2019-04-01 09:50:14 +02:00
Claudio Scordino 45e5b4e6eb Tutorial: explain how to access CoE SDOs and PDOs
Trivial patch reporting some useful information already provided as
GitHub issues.
2019-03-27 16:36:49 +01:00
nakarlsson 828b8987d9
Merge pull request #260 from nakarlsson/master
improve groups, make memory usage more efficient, fix erroneous byte …
2019-03-12 10:08:05 +01:00
Andreas Karlsson 930d6e07c8 improve groups, make memory usage more efficient, fix erroneous byte calculations and dc frame handling 2019-03-11 10:34:21 +01:00
ArthurKetels 8832ef0f2f
Merge pull request #256 from claudioscordino/upstream-new
Clean up comments, EC_PRINT and thread usage.
2019-02-14 11:54:19 +01:00
Claudio Scordino e0d880d7bd Avoid OSAL_THREAD usage when EC_MAX_MAPT=1
Rationale : allow SOEM to be used in a OS that does not support threads.
2019-02-14 10:56:50 +01:00
Claudio Scordino 7beba91c62 Fix typos in comments.
No functional changes.
2019-02-04 13:56:11 +01:00
Claudio Scordino 770e4c93d6 README: link to the documentation 2019-02-04 13:56:06 +01:00
Claudio Scordino 26cde1dc94 Introduce platform-specific EC_PRINT
Rationale: not all operating systems use function printf for printing
console messages. This commits allows to define platform-specific
functions.
2019-02-04 13:56:00 +01:00
Claudio Scordino 826be99bab .gitignore: ignore ctags file 2019-02-04 13:55:53 +01:00
nakarlsson 037a629839
Fixed un-used parameter and variable warnings for EoE (#248)
Trivial fix, no review
2019-02-01 10:42:18 +01:00
nakarlsson 86a2584e47
Impelmented EoE filter function in mailbox receive (#244) 2019-01-31 14:57:16 +01:00
ArthurKetels 4427684cc5
ethercatconfig : Set SM enable flag if SM length > 0 2019-01-31 10:07:18 +01:00