The PSYS driver contained in the EtherCAN archives (psys-2.1.3) has an incompatiblity issue with kernels >= 3.10.0. To work around this install psys_linux_2.1.4.tgz after the EtherCAN archive. This is needed as long as the PSYS component of the EtherCAN archives has not been updated! 2016-03-30:JU: psys_linux_2.1.5.tgz, same workaround, but for kernel 4.x / gcc 5.x (e.g. Ubuntu 16.04) 2017-10-04:MJ: psys_linux_2.1.6.tgz, updated the PSYS driver to be compatible with kernels 4.14 and following. 2018-04-04:MJ: psys_linux_2.1.7.tgz, updated the PSYS library's headers to be compatible with current GNU compilers that don't provide the deprecated "linux" macro any more but still provide the "__linux__" macro from the reserved C namespace. 2018-08-06:MJ: psys_linux_2.1.8.tgz, updated the PSYS driver (now version 0.6.9) to be compatible with kernels 4.15 and following. No functional change between library version 2.1.7 -> 2.1.8. 2019-03-11:MJ: psys_linux_2.1.9.tgz, updated the PSYS driver (now versino 0.6.11) to be compatible with kernels 5.0 and following. No functional change between library version 2.1.8 -> 2.1.9. 2021-05-01:MJ/JU: psys_linux_2.2.1.tgz, fixed the possibility to transfer non zero-terminated strings to the kernel driver. Added support for kernel >= 5.6* which needs driver version 0.6.12 that fixes a problem with the changed Linux API of the proc_create() function. 2021-11-10:MJ: psys_linux_2.2.2.tgz, Cleaned up the PSYS library's headers to only include the headers needed to make the psys.h API declarations compilable. This avoids as much as possible any namespace pollution induced by including psys.h into an application program. No functional change in library or driver (still version 0.6.12). 2021-12-12:MJ: psys_linux_2.2.3.tgz, Change the way to name threads. Use pthread_setname_np() to set a thread name that can also be seen with 'ps'. The old style by creating files under /var/run/psys/ is still enabled. More details in the README. No functional change in driver. 2022-08-30:MJ: psys_linux_2.2.4.tgz, Fix bug with psysTimerSet() where timers with zero interval (single shot timers) would not run its callback function. No functional change in driver. But driver version was increased to mark changes in driver build infrastructure.