Unable to set message interval for any message using mavlink protocol from STM32 to pixhawk 2.4.8

Hello everyone , hope this message finds you well.

i am trying to read some data from

pixhawk 2.4.8 from stm32 using mavlink protocol and the SET_MESSAGE_INTERVAL is not working

i want to set the interval of highres_imu to 100000 microseconds for some testing and it’s not doing so
i referred to this How to Request & Stream Messages | MAVLink Guide code to implement the long command for SET_MESSAGE_INTERVAL and here is the code block responsible for sending the message in my code

void set_message_interval(void){
uint16_t interval_us=100000;
uint8_t buf[MAVLINK_MAX_PACKET_LEN];
mavlink_message_t msg;

mavlink_msg_command_long_pack(
        MAV_SYS_ID,
		MAV_COMP_ID_ONBOARD_COMPUTER,
        &msg,
        FC_SYS_ID,
        FC_COMP_ID,
		MAV_CMD_SET_MESSAGE_INTERVAL,
        0,
        (float)MAVLINK_MSG_ID_HIGHRES_IMU,
        (float)interval_us,
        0, 0, 0, 0, 0
    );
uint16_t len = mavlink_msg_to_send_buffer(buf, &msg);
HAL_UART_Transmit(&huart1, buf, len, 100);

}

here is the link to repo of my codebase: mavlink_test/Core/Src/main.c at master · aviralshastri/mavlink_test · GitHub

i can monitor heartbeat properly in the mavlink inspector in mission planner but there i cant see any initialization or any message highres_imu being sent . For reference i have attached a snapshot of mavlink inspector

i tried using an external led on stm32 to trigger when the after function call and it glows as expected after the function call but the highres_imu can never be seen on the mavlink inspector

i even tried with the existing message that is already being set by FC i.e. RAW_IMU to just change the interval to 100000 microseconds and not completely ask new message id but it had same issue the rate in the mavlink inspector never increased to 10hz

can anyone point what’s the mistake ?

Any other steps i can perform to debug this problem ?

Thanks in advance

uint16_t maxvalue = 65.535 < 100.000