PDO mapping content can be modified by default. However, it is possible to set the PDO as fixed or unfixed. Notice that this setting is individual for each PDO.
Fixed PDO configuration
To set the PDOs fixed use the following code.
uint32_t EC_API_SLV_PDO_setFixed(EC_API_SLV_SHandle_t *pHandle, EC_API_SLV_Pdo_t *pPdo, bool fixed)
This is the function to set a PDO as fixed or not. Download of PDO Configuration during start up.
Definition ecSlvApi_pdo.c:1638
As a result, the PDO objects are flagged as Read Only.
PDO objects with R0 access
Therefore, it is not permitted to change the mapping configuration.
PDO mapping can not be changed
Not Fixed PDO configuration
To disable the fixed attribute on the PDOs, use the following code.
As a result, the PDO objects are flagged as Read Write. Notice that the maximum numbers of subIndexes (254 subIndexes) are defined by default.
PDO objects with RW access
Now it is permitted to change the mapping configuration.
PDO mapping can be changed
New PDO mapping
Limit the number of PDO subIndexes
As seen above, the SDK permits up to 254 subIndexes. In order to reduce the amount of permitted subIndexes, use the following code.
EC_API_SLV_PDO_setMaxSubIndex(pAppInstance_p->ptEcSlvApi, pAppInstance_p->ptTxPdo1A00, 8);
EC_API_SLV_PDO_setMaxSubIndex(pAppInstance_p->ptEcSlvApi, pAppInstance_p->ptTxPdo1A01, 8);
EC_API_SLV_PDO_setMaxSubIndex(pAppInstance_p->ptEcSlvApi, pAppInstance_p->ptRxPdo1600, 8);
EC_API_SLV_PDO_setMaxSubIndex(pAppInstance_p->ptEcSlvApi, pAppInstance_p->ptRxPdo1601, 8);
New PDO mapping