This is my code:
void send_serial_message(char *buffer, size_t length) {
ret_code_t ret;
//DEBUG
NRF_LOG_INFO("tx buffer length = %d", length);
for(int i=0; i<length; i++)
{
NRF_LOG_INFO("%02x", buffer[i]);
}
//DEBUG end
nrf_gpio_pin_set(TRANSMIT_ENABLE);
ret = nrf_serial_write(&serial1_uart,
buffer,
length,
NULL,
NRF_SERIAL_MAX_TIMEOUT);
APP_ERROR_CHECK(ret);
NRF_LOG_INFO("serial return val: 0x%x", ret);
}
This is the results of the logs in the code:
<info> app: tx buffer length = 8
<info> app: AA
<info> app: FF
<info> app: 10
<info> app: 08
<info> app: F7
<info> app: 10
<info> app: 10
<info> app: D8
<info> app: serial return val: 0x0
The return code shows that it was "successful." However, the serial write is not working properly. Here is what I measure using a logic analyzer on the serial transmission pin:

This is showing the 0xAA gets sent properly, but then the line goes low, and the rest of the sequence fails to transmit.
What is happening??
