Слейв всё равно работает не очень хорошо. То есть вот у меня между двумя стмками всё работает, и HAL_I2C_IsDeviceReady, и данные гоняются, но если подключить к моему слейву некое стороннее устройство, то всё валится.
И ещё когда делаешь запрос к слейву HAL_I2C_IsDeviceReady и при этом включено ожидание данных, то слейв пишет ошибку AF, но продолжает работать.
В общем не понятно, как отличить запрос HAL_I2C_IsDeviceReady, от запроса данных.