Here are the settings I'm using
on the Master PMAC:
Gate3[10].PhaseFreq=8000
Gate3[11].PhaseFreq=8000
Gate3[10].ServoClockDiv=3
Gate3[10].MacroEnableA=$0fffff00; //Activate 8x servo nodes, 6x IO nodes & 2x aux nodes
Gate3[10].MacroEnableB=$1f000100;
Gate3[11].MacroEnableA=$1f000000;
Gate3[11].MacroEnableB=$1f000000;
Gate3[10].MacroModeA=$403000; //Set Macro as master
Gate3[10].MacroModeB=$1000;
Gate3[11].MacroModeA=$0;
Gate3[11].MacroModeB=$0;
Macro.TestPeriod=10/Sys.ServoPeriod; //Macro Ring check period [servo cycles]
Macro.TestMaxErrors=Macro.TestPeriod/10; //Macro maximum ring error count
Macro.TestReqdSynchs=Macro.TestPeriod - Macro.TestMaxErrors; //Macro minimum sync packet count
On the second (slave) PMAC
Gate3[10].PhaseFreq=8000
Gate3[10].ServoClockDiv=3
Sys.PhaseOverServoPeriod=0.25
Sys.ServoPeriod=0.5
//Gate3[10].MacroEnableA=$0fffff00; //Activate 8x servo nodes, 6x IO nodes & 2x aux nodes
//Gate3[10].MacroEnableB=$1f000100;
//Gate3[11].MacroEnableA=$1f000000;
//Gate3[11].MacroEnableB=$1f000000;
//Gate3[10].MacroModeA=$408000; //Set Macro as slave
//Gate3[10].MacroModeB=$1000;
//Gate3[11].MacroModeA=$0;
//Gate3[11].MacroModeB=$0;
Acc5E3[10].MacroEnableA=$fbfff00
Acc5E3[10].MacroModeA=$40c000
Acc5E3[10].MacroEnableB=$1f800100
Acc5E3[10].MacroModeB=$4000
Acc5E3[11].MacroEnableA=$1f000000
Acc5E3[11].MacroModeA=$4000
Acc5E3[11].MacroEnableB=$1f000000
Acc5E3[11].MacroModeB=$4000
Macro.TestPeriod=10/Sys.ServoPeriod; // MACRO Ring Check Period [servo cycles]
Macro.TestMaxErrors=Macro.TestPeriod/10; // MACRO Maximum Ring Error Count (Related to I81 in Turbo)
Macro.TestReqdSynchs=Macro.TestPeriod - Macro.TestMaxErrors; // MACRO Minimum Sync Packet Count // (Related to I82 in Turbo)
I managed to send and receive single bits of data between the two PMACs using this method
ptr Test->Gate3[10].MacroOutA[6][0].8.1 //on the Slave
ptr Test->Gate3[10].MacroInAA[6][0].8.1 //On the Master
This works fine but when I try to send 16bit data using the same method
ptr test_data->Gate3[10].MacroOut[6][0].8.16
I'm getting random data.
Am I missing some settings or using the Macro ring wrong?