Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

EL6900 Incompatible PDO Mapping #97

Open
safarir opened this issue Jan 31, 2021 · 0 comments
Open

EL6900 Incompatible PDO Mapping #97

safarir opened this issue Jan 31, 2021 · 0 comments

Comments

@safarir
Copy link

safarir commented Jan 31, 2021

I have an EL6900 hw version 0, software version 3 and the PDO mapping from the code does not match what the device have.

ethercat pdo output:

SM0: PhysAddr 0x1000, DefaultSize  256, ControlRegister 0x26, Enable 1
SM1: PhysAddr 0x1100, DefaultSize  256, ControlRegister 0x22, Enable 1
SM2: PhysAddr 0x1200, DefaultSize    2, ControlRegister 0x24, Enable 1
  RxPDO 0x1600 "FSOE RxPDO-Map 001"
    PDO entry 0x7000:01,  8 bit, "FSOE Command"
    PDO entry 0x7001:01,  8 bit, "SubIndex 001"
    PDO entry 0x7000:03, 16 bit, "FSOE CRC 001"
    PDO entry 0x7000:02, 16 bit, "FSOE ConnID"
  RxPDO 0x17f0 "DEVICE RxPDO-Map Standard In Vars"
    PDO entry 0xf201:01,  1 bit, "SubIndex 001"
    PDO entry 0xf201:02,  1 bit, "SubIndex 002"
    PDO entry 0xf201:03,  1 bit, "SubIndex 003"
    PDO entry 0xf201:04,  1 bit, "SubIndex 004"
    PDO entry 0xf201:05,  1 bit, "SubIndex 005"
    PDO entry 0xf201:06,  1 bit, "SubIndex 006"
    PDO entry 0xf201:07,  1 bit, "SubIndex 007"
    PDO entry 0xf201:08,  1 bit, "SubIndex 008"
  RxPDO 0x17ff "DEVICE RxPDO-Map Control"
    PDO entry 0xf200:01, 16 bit, "Control"
SM3: PhysAddr 0x1d00, DefaultSize    2, ControlRegister 0x20, Enable 1
  TxPDO 0x1a00 "FSOE TxPDO-Map 001"
    PDO entry 0x6000:01,  8 bit, "FSOE Command"
    PDO entry 0x6001:01,  8 bit, "SubIndex 001"
    PDO entry 0x6000:03, 16 bit, "FSOE CRC 001"
    PDO entry 0x6000:02, 16 bit, "FSOE ConnID"
  TxPDO 0x1bf0 "DEVICE TxPDO-Map Standard Out Vars"
    PDO entry 0xf101:01,  1 bit, "SubIndex 001"
    PDO entry 0xf101:02,  1 bit, "SubIndex 002"
    PDO entry 0xf101:03,  1 bit, "SubIndex 003"
    PDO entry 0xf101:04,  1 bit, "SubIndex 004"
    PDO entry 0xf101:05,  1 bit, "SubIndex 005"
    PDO entry 0xf101:06,  1 bit, "SubIndex 006"
    PDO entry 0xf101:07,  1 bit, "SubIndex 007"
    PDO entry 0xf101:08,  1 bit, "SubIndex 008"
  TxPDO 0x1bff "DEVICE TxPDO-Map Status"
    PDO entry 0xf100:01,  3 bit, "Safety Project State"
    PDO entry 0x0000:00,  4 bit, "Gap"
    PDO entry 0xf100:08,  1 bit, "Login Active"
    PDO entry 0xf100:09,  1 bit, "Input Size Mismatch"
    PDO entry 0xf100:0a,  1 bit, "Output Size Mismatch"
    PDO entry 0x0000:00,  4 bit, "Gap"
    PDO entry 0x1800:07,  1 bit, ""
    PDO entry 0x1800:09,  1 bit, ""

Code:

  LCEC_PDO_INIT(pdo_entry_regs, slave->index, slave->vid, slave->pid, 0xf100, 0x0f, &hal_data->txpdo_state_os, &hal_data->txpdo_state_bp);
  LCEC_PDO_INIT(pdo_entry_regs, slave->index, slave->vid, slave->pid, 0xf100, 0x10, &hal_data->txpdo_toggle_os, &hal_data->txpdo_toggle_bp);

For some reason, on my device, I have a PDO entry 0x1800:07 and 0x1800:09 rather than the 0xf100:0f and 0xf100:10. The cause me to get the following error when loading it:

Failed to register PDO entry: No such file or directory
LCEC: master 0 PDO entry registration failed

Fixing the offset in the line above fix the issue.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant