Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
| Beide Seiten der vorigen RevisionVorhergehende ÜberarbeitungNächste Überarbeitung | Vorhergehende Überarbeitung | ||
| embedded_systems:ethercat:install_acontis_stack [2019-01-16 16:42] – mgehrig2 | embedded_systems:ethercat:install_acontis_stack [2024-01-25 11:48] (aktuell) – Urs Graf | ||
|---|---|---|---|
| Zeile 1: | Zeile 1: | ||
| - | ====== Install the Acontis EtherCAT Stack ====== | + | ====== Install the Acontis EtherCAT Stack (ecmaster) |
| ===== Overview ===== | ===== Overview ===== | ||
| - | Read first [[embedded_systems: | + | First, read [[embedded_systems: |
| The Acontis Stack (Class B) and the DCM Add On (Class A) can be placed anywhere. | The Acontis Stack (Class B) and the DCM Add On (Class A) can be placed anywhere. | ||
| - | In this manual | + | In this documentation |
| * ''< | * ''< | ||
| * ''< | * ''< | ||
| ===== LinkLayer Module ===== | ===== LinkLayer Module ===== | ||
| - | - **EC LinkLayer Module** | + | - The EC LinkLayer |
| - | - The loaded standard Ethernet driver has to be unloaded after boot. | + | - The loaded standard Ethernet driver |
| - The EC LinkLayer has to be loaded after boot. | - The EC LinkLayer has to be loaded after boot. | ||
| Zeile 21: | Zeile 21: | ||
| cd < | cd < | ||
| make modules | make modules | ||
| + | sudo make modules_install | ||
| </ | </ | ||
| + | |||
| + | The module will be installed to ''/ | ||
| === Cross-Compile === | === Cross-Compile === | ||
| Zeile 31: | Zeile 34: | ||
| make modules KERNELDIR=< | make modules KERNELDIR=< | ||
| </ | </ | ||
| + | |||
| + | === Possible problems === | ||
| + | The module may refuse to build and displays an error message like this: | ||
| + | < | ||
| + | error: unknown type name ' | ||
| + | </ | ||
| + | |||
| + | This is because the stack version is not compatible with the installed kernel. | ||
| + | |||
| + | The Acontis stack V2.9 is compatible with the linux kernel v4.4 but not mit kernel v4.14. | ||
| ==== Unload standard Ethernet driver ==== | ==== Unload standard Ethernet driver ==== | ||
| + | === Identify Network Card === | ||
| + | * List all PCI devices:\\ | ||
| + | < | ||
| + | * Search for your Ethernet controller. For example: '' | ||
| + | * The number on the left is the Instance-ID. In this example '' | ||
| + | * List all PCI devices in verbose mode: | ||
| + | < | ||
| + | * Find your controller again with the Instance-ID | ||
| + | * If one line says something like '' | ||
| + | === Unbind standard driver === | ||
| + | < | ||
| + | echo " | ||
| - | ==== Load LinkLayer | + | === Load LinkLayer |
| - | < | + | < |
| - | You may want to add this line to your '' | ||
| - | ==== Automate | + | ==== Automate |
| + | To automate unbinding the standard driver and loading the EC LinkLayer module you can add the following lines to the .bashrc file: | ||
| + | < | ||
| + | echo "< | ||
| + | modprobe atemsys | ||
| + | </ | ||
| + | ===== Libraries ===== | ||
| + | Copy the following library to your working folder (where you want to run your application). | ||
| + | * libemll8254x.so (in ''< | ||