diff -r 0791aac03180 -r 23fd8b510803 master/fsm_pdo_mapping.c --- a/master/fsm_pdo_mapping.c Wed Feb 27 15:24:00 2008 +0000 +++ b/master/fsm_pdo_mapping.c Thu Feb 28 10:58:43 2008 +0000 @@ -180,6 +180,16 @@ if (ec_pdo_mapping_equal(&fsm->sync->mapping, fsm->mapping)) continue; + // Pdo mapping has to be changed. Does the slave support this? + if (!fsm->slave->sii.mailbox_protocols & EC_MBOX_COE + || (fsm->slave->sii.has_general + && !fsm->slave->sii.coe_details.enable_pdo_assign)) { + EC_ERR("Slave %u does not support changing the Pdo mapping!\n", + fsm->slave->ring_position); + fsm->state = ec_fsm_pdo_mapping_state_error; + return; + } + if (fsm->slave->master->debug_level) { EC_DBG("Changing Pdo mapping for SM%u of slave %u.\n", fsm->sync->index, fsm->slave->ring_position);