Question
SPI Multi-master NSS Setup
Hello
Im trying to implement stm32 spi multi-master function on a stm32f765 according to the below presentation

I keep getting MODF error when transmitting as a master, that would indicate that the slave sets the masters NSS pin low. Even if I set the NSS pin permantently high, by hooking it to a 3,3v pin , I get the same error!
below is my setup:
--------MSP SETUP--------------------------------------
GPIO_InitStruct.Pin = SPI_CS_Pin;
GPIO_InitStruct.Alternate = GPIO_AF5_SPI2;
GPIO_InitStruct.Mode = GPIO_MODE_INPUT | GPIO_MODE_IT_RISING;
GPIO_InitStruct.Pull = GPIO_PULLUP;
HAL_GPIO_Init(SPI_CS_GPIO_Port, &GPIO_InitStruct);
// SPI master com trigger GPIO pin configuration
GPIO_InitStruct.Pin = SPI_MASTER_TRIG_Pin;
GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP ;
HAL_GPIO_Init(SPI_MASTER_TRIG_Port, &GPIO_InitStruct);
--------MSP SETUP--------------------------------------
------------SPI Handle setup--------------------------
static void setupSPIbaseStruct(SPI_HandleTypeDef *pSpiHandle, uint32_t mode)
{
pSpiHandle->Instance = SPI2;
if (mode == SPI_MODE_MASTER) {
pSpiHandle->Init.BaudRatePrescaler = SPI_BAUDRATEPRESCALER_128;
}else{
pSpiHandle->Init.BaudRatePrescaler = SPI_BAUDRATEPRESCALER_32;
}
pSpiHandle->Init.Direction = SPI_DIRECTION_2LINES;
pSpiHandle->Init.CLKPhase = SPI_PHASE_2EDGE;
pSpiHandle->Init.CLKPolarity = SPI_POLARITY_HIGH;
pSpiHandle->Init.DataSize = SPI_DATASIZE_8BIT;
pSpiHandle->Init.FirstBit = SPI_FIRSTBIT_MSB;
pSpiHandle->Init.TIMode = SPI_TIMODE_DISABLE;
pSpiHandle->Init.CRCCalculation = SPI_CRCCALCULATION_ENABLE;
pSpiHandle->Init.CRCPolynomial = 7;
pSpiHandle->Init.NSSPMode = SPI_NSS_PULSE_DISABLED;
pSpiHandle->Init.NSS = SPI_NSS_HARD_INPUT;
pSpiHandle->Init.Mode = mode ;
}
------------SPI Handle setup--------------------------what Im I doing wrong?