diff --git a/samples/drivers/uart/echo_bot/src/main.c b/samples/drivers/uart/echo_bot/src/main.c index 55623a32487..4d66abaa6f2 100644 --- a/samples/drivers/uart/echo_bot/src/main.c +++ b/samples/drivers/uart/echo_bot/src/main.c @@ -78,7 +78,18 @@ void main(void) } /* configure interrupt and callback to receive data */ - uart_irq_callback_user_data_set(uart_dev, serial_cb, NULL); + int ret = uart_irq_callback_user_data_set(uart_dev, serial_cb, NULL); + + if (ret < 0) { + if (ret == -ENOTSUP) { + printk("Interrupt-driven UART API support not enabled\n"); + } else if (ret == -ENOSYS) { + printk("UART device does not support interrupt-driven API\n"); + } else { + printk("Error setting UART callback: %d\n", ret); + } + return; + } uart_irq_rx_enable(uart_dev); print_uart("Hello! I'm your echo bot.\r\n");