...
Determine if FPA has successfully established communication with the target device. This step requires a working connection, a read of the processor ID, RAM size, and flash size checked against internal records (except when target MCU doesn’t have this meta-data available), and calibration of internal CPU clock. If these steps match expected values the operation will succeed.
If https://elprotronic.atlassian.net/wiki/spaces/FPGPARM/pages/57802857/General+Configuration#MetadataWrnIsErr General Configuration | MetadataWrnIsErr is disabled, only the processor ID needs to match records, the RAM and flash size do not. If the RAM and flash do not match a warning will be printed and accessible via Generic Functions | F_ReportMessage.
If https://elprotronic.atlassian.net/wiki/spaces/FPGPARM/pages/57802857/General+Configuration#MetadataWrnIsErr General Configuration | MetadataWrnIsErr is enabled, all values need to match, processor ID, RAM size, and flash size, otherwise function will fail.
This function is internally called by all other encapsulated functions at startup before they proceed to perform any other operations. Therefore if this function fails, other encapsulated functions will invariably fail as well. The exception is https://elprotronic.atlassian.net/wiki/spaces/FPGPARM/pages/57770414/Encapsulated+Functions#F Encapsulated Functions | F_Clear_Locked_Device which uses a custom procedure to unlock the MCU (if supported by vendor). This function has some exclusive GangPro-ARM return values.
...