<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="https://devzone.nordicsemi.com/cfs-file/__key/system/syndication/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Issue with updating nRF52832 over USART</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/87580/issue-with-updating-nrf52832-over-usart</link><description>I am using an STM32L4 chip that sends an update to the nRF52832 on a ublox module over USART. I assume the nordic chip is in the bootloader during the update. 
 We get a UART error: 4 and when we observe the UART lines we see that on the TX line of the</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Wed, 11 May 2022 09:01:19 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/87580/issue-with-updating-nrf52832-over-usart" /><item><title>RE: Issue with updating nRF52832 over USART</title><link>https://devzone.nordicsemi.com/thread/367342?ContentTypeID=1</link><pubDate>Wed, 11 May 2022 09:01:19 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:8cab1f77-747d-4ebc-9ce9-816a90220efc</guid><dc:creator>Susheel Nuguru</dc:creator><description>&lt;p&gt;The code looks ok except the delays seems to be random. Better would be do this&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;    err_code = sd_clock_hfclk_request();
    APP_ERROR_CHECK(err_code);

    uint32_t hfclk_is_running = 0;

    while (!hfclk_is_running)
    {
        APP_ERROR_CHECK(sd_clock_hfclk_is_running(&amp;amp;hfclk_is_running) );
    }&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;I do not see anything else which points as obviously wrong apart from not knowing the accuracy of your XTAL HFCLK.&amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Issue with updating nRF52832 over USART</title><link>https://devzone.nordicsemi.com/thread/367295?ContentTypeID=1</link><pubDate>Wed, 11 May 2022 06:34:04 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:9ff8b444-fa00-4af4-83a5-6f5ad5f6f40d</guid><dc:creator>pressure_sensor_nonconn_adv</dc:creator><description>&lt;p&gt;Ok yes you are right, we do not use the LFCLK as source.&lt;/p&gt;
&lt;p&gt;I think we should use&amp;nbsp;&lt;a href="https://infocenter.nordicsemi.com/index.jsp?topic=%2Fsdk_nrf5_v17.1.0%2Fgroup__nrf__drv__clock.html&amp;amp;anchor=ga425c8dc0508bb9c0777da123b7c66f3d"&gt;nrf_drv_clock_hfclk_request&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/a&gt;when there is no softdevice (only UART updates).&lt;/p&gt;
&lt;p&gt;However, in my case we also allow Bluetooth and the Softdevice to enable OTA updates. Therefore&amp;nbsp;&lt;span&gt;sd_clock_hfclk_request() has to be used.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;What I currently do is this:&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;&lt;pre class="ui-code" data-mode="text"&gt;        // init SD
        ret_val = nrf_dfu_init(dfu_observer);

        nrf_delay_ms(500);
		sd_clock_hfclk_request();

		//delay for startup of crystal: Typical startup times is 200-400 ms for low frequencies and 200 &amp;#181;s to 400 &amp;#181;s in the high frequency domain
		nrf_delay_ms(500);

		uint32_t is_running = 0;
		uint32_t * p_is_running = &amp;amp;is_running;

		if(sd_clock_hfclk_is_running(p_is_running)){
		   //send debug message if the HF clock is running
		   NRF_LOG_DEBUG(&amp;quot;sd_clock_hfclk_is_running&amp;quot;);
		}


        loop_forever(); // This function will never return.
        NRF_LOG_ERROR(&amp;quot;Unreachable&amp;quot;);&lt;/pre&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Issue with updating nRF52832 over USART</title><link>https://devzone.nordicsemi.com/thread/367235?ContentTypeID=1</link><pubDate>Tue, 10 May 2022 15:08:33 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:ca85d66f-4286-4f4f-94dd-6cbfad61e373</guid><dc:creator>Susheel Nuguru</dc:creator><description>&lt;p&gt;UART uses HFCLK and the clock configuration you provided is for LFCLK. I do not think that the issue you are seeing is related to LFCLK. What is the accuracy of the XTAL HFCLK that you are are using? Check the specs to see the temperatures and accuracies that it supports.&lt;/p&gt;
[quote user="pressure_sensor_nonconn_adv"]They propose to turn on the HFCLK for UART transmission with&amp;nbsp;&lt;span style="font-family:&amp;#39;courier new&amp;#39;, courier;"&gt;sd_clock_hfclk_request()&lt;/span&gt;[/quote]
&lt;p&gt;You need to call &lt;a href="https://infocenter.nordicsemi.com/index.jsp?topic=%2Fsdk_nrf5_v17.1.0%2Fgroup__nrf__drv__clock.html&amp;amp;anchor=ga425c8dc0508bb9c0777da123b7c66f3d"&gt;nrf_drv_clock_hfclk_request &lt;/a&gt;to start the XTAL and you can find this API in nRF5SDK\integration\nrfx\legacy\nrf_drv_clock.h&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Issue with updating nRF52832 over USART</title><link>https://devzone.nordicsemi.com/thread/366918?ContentTypeID=1</link><pubDate>Mon, 09 May 2022 12:11:49 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:d4bfeae3-bab3-4e6c-8683-52b20c912cbf</guid><dc:creator>pressure_sensor_nonconn_adv</dc:creator><description>&lt;p&gt;I will try with lower frequency values and enabling the pullup on RX and TX lines on STM32-side.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;I also found&amp;nbsp;that the error only occurs at higher temperatures for which there are similar issues already:&lt;/p&gt;
&lt;p&gt;&lt;a href="https://devzone.nordicsemi.com/f/nordic-q-a/22876/uart-heat-problem"&gt;https://devzone.nordicsemi.com/f/nordic-q-a/22876/uart-heat-problem&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="https://devzone.nordicsemi.com/f/nordic-q-a/52065/uart-frame-errors"&gt;https://devzone.nordicsemi.com/f/nordic-q-a/52065/uart-frame-errors&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;They propose to turn on the HFCLK for UART transmission with&amp;nbsp;&lt;span style="font-family:&amp;#39;courier new&amp;#39;, courier;"&gt;sd_clock_hfclk_request()&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-family:&amp;#39;courier new&amp;#39;, courier;"&gt;&lt;span style="font-family:arial, helvetica, sans-serif;"&gt;I tried doing this but had no success. My clock configuration is the following:&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-family:&amp;#39;courier new&amp;#39;, courier;"&gt;&lt;span style="font-family:arial, helvetica, sans-serif;"&gt;&lt;pre class="ui-code" data-mode="text"&gt;//==========================================================
// &amp;lt;o&amp;gt; NRF_SDH_CLOCK_LF_SRC  - SoftDevice clock source.
 
// &amp;lt;0=&amp;gt; NRF_CLOCK_LF_SRC_RC 
// &amp;lt;1=&amp;gt; NRF_CLOCK_LF_SRC_XTAL 
// &amp;lt;2=&amp;gt; NRF_CLOCK_LF_SRC_SYNTH 

#ifndef NRF_SDH_CLOCK_LF_SRC
#define NRF_SDH_CLOCK_LF_SRC 0//0 armando//1 original
#endif

// &amp;lt;o&amp;gt; NRF_SDH_CLOCK_LF_RC_CTIV - SoftDevice calibration timer interval. 
#ifndef NRF_SDH_CLOCK_LF_RC_CTIV
#define NRF_SDH_CLOCK_LF_RC_CTIV 16 //armando//0 original
#endif

// &amp;lt;o&amp;gt; NRF_SDH_CLOCK_LF_RC_TEMP_CTIV - SoftDevice calibration timer interval under constant temperature. 
// &amp;lt;i&amp;gt; How often (in number of calibration intervals) the RC oscillator shall be calibrated
// &amp;lt;i&amp;gt;  if the temperature has not changed.

#ifndef NRF_SDH_CLOCK_LF_RC_TEMP_CTIV
#define NRF_SDH_CLOCK_LF_RC_TEMP_CTIV 2 //armando //0 original
#endif

// &amp;lt;o&amp;gt; NRF_SDH_CLOCK_LF_ACCURACY  - External clock accuracy used in the LL to compute timing.
 
// &amp;lt;0=&amp;gt; NRF_CLOCK_LF_ACCURACY_250_PPM 
// &amp;lt;1=&amp;gt; NRF_CLOCK_LF_ACCURACY_500_PPM 
// &amp;lt;2=&amp;gt; NRF_CLOCK_LF_ACCURACY_150_PPM 
// &amp;lt;3=&amp;gt; NRF_CLOCK_LF_ACCURACY_100_PPM 
// &amp;lt;4=&amp;gt; NRF_CLOCK_LF_ACCURACY_75_PPM 
// &amp;lt;5=&amp;gt; NRF_CLOCK_LF_ACCURACY_50_PPM 
// &amp;lt;6=&amp;gt; NRF_CLOCK_LF_ACCURACY_30_PPM 
// &amp;lt;7=&amp;gt; NRF_CLOCK_LF_ACCURACY_20_PPM 
// &amp;lt;8=&amp;gt; NRF_CLOCK_LF_ACCURACY_10_PPM 
// &amp;lt;9=&amp;gt; NRF_CLOCK_LF_ACCURACY_5_PPM 
// &amp;lt;10=&amp;gt; NRF_CLOCK_LF_ACCURACY_2_PPM 
// &amp;lt;11=&amp;gt; NRF_CLOCK_LF_ACCURACY_1_PPM 

#ifndef NRF_SDH_CLOCK_LF_ACCURACY
#define NRF_SDH_CLOCK_LF_ACCURACY 1 // armando //7 original
#endif&lt;/pre&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-family:&amp;#39;courier new&amp;#39;, courier;"&gt;&lt;span style="font-family:arial, helvetica, sans-serif;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-family:&amp;#39;courier new&amp;#39;, courier;"&gt;&lt;span style="font-family:arial, helvetica, sans-serif;"&gt;--&amp;gt; I wondered if the above even makes sense since I am not using the softdevice (I am working with the &lt;strong&gt;bootloader&lt;/strong&gt;). So do I need to use the NRF driver instead?&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-family:&amp;#39;courier new&amp;#39;, courier;"&gt;&lt;span style="font-family:arial, helvetica, sans-serif;"&gt;&lt;pre class="ui-code" data-mode="text"&gt;#define NRF_CLOCK_ENABLED 1
&lt;/pre&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Issue with updating nRF52832 over USART</title><link>https://devzone.nordicsemi.com/thread/366916?ContentTypeID=1</link><pubDate>Mon, 09 May 2022 12:01:23 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:60bf253f-7573-40b3-9384-19d7520b45e1</guid><dc:creator>Susheel Nuguru</dc:creator><description>[quote user="pressure_sensor_nonconn_adv"]--&amp;gt; What I also noticed is that in the above measurements of UART the Stop bit is present, just not long enough. What might cause this? Maybe the unconventional UART frequency?[/quote]
&lt;p&gt;Can you try this with lower frequencies and sees if the behavior is the same. I have not heard of inadequate length of stop bit before.I am also not able to see any internal pull configuration on the pins if there are any. Have you setup pullup on the com pins from the SoC?&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Issue with updating nRF52832 over USART</title><link>https://devzone.nordicsemi.com/thread/366598?ContentTypeID=1</link><pubDate>Fri, 06 May 2022 07:07:44 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:5b38bc16-4f63-4e55-b319-2e4fbb428ad2</guid><dc:creator>pressure_sensor_nonconn_adv</dc:creator><description>&lt;p&gt;This is the configuration on STML4 side:&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="c_cpp"&gt;void MX_USART2_UART_Init(void)
{

  huart2.Instance = USART2;
  huart2.Init.BaudRate = 921600;
  huart2.Init.WordLength = UART_WORDLENGTH_8B;
  huart2.Init.StopBits = UART_STOPBITS_1;
  huart2.Init.Parity = UART_PARITY_NONE;
  huart2.Init.Mode = UART_MODE_TX_RX;
  huart2.Init.HwFlowCtl = UART_HWCONTROL_RTS_CTS;
  huart2.Init.OverSampling = UART_OVERSAMPLING_16;
  huart2.Init.OneBitSampling = UART_ONE_BIT_SAMPLE_ENABLE;
  huart2.Init.ClockPrescaler = UART_PRESCALER_DIV1;
  huart2.AdvancedInit.AdvFeatureInit = UART_ADVFEATURE_NO_INIT;
  if (HAL_UART_Init(&amp;amp;huart2) != HAL_OK)
  {
    Error_Handler();
  }
  if (HAL_UARTEx_SetTxFifoThreshold(&amp;amp;huart2, UART_TXFIFO_THRESHOLD_3_4) != HAL_OK)
  {
    Error_Handler();
  }
  if (HAL_UARTEx_SetRxFifoThreshold(&amp;amp;huart2, UART_RXFIFO_THRESHOLD_3_4) != HAL_OK)
  {
    Error_Handler();
  }
  if (HAL_UARTEx_EnableFifoMode(&amp;amp;huart2) != HAL_OK)
  {
    Error_Handler();
  }

}&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;  else if(uartHandle-&amp;gt;Instance==USART2)
  {
  /* USER CODE BEGIN USART2_MspInit 0 */

  /* USER CODE END USART2_MspInit 0 */
    /* USART2 clock enable */
    __HAL_RCC_USART2_CLK_ENABLE();

    __HAL_RCC_GPIOD_CLK_ENABLE();
    /**USART2 GPIO Configuration
    PD5     ------&amp;gt; USART2_TX
    PD6     ------&amp;gt; USART2_RX
    PD3     ------&amp;gt; USART2_CTS
    PD4     ------&amp;gt; USART2_RTS
    */
    GPIO_InitStruct.Pin = GPIO_PIN_5|GPIO_PIN_6|GPIO_PIN_3|GPIO_PIN_4;
    GPIO_InitStruct.Mode = GPIO_MODE_AF_PP;
    GPIO_InitStruct.Pull = GPIO_NOPULL;
    GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_VERY_HIGH;
    GPIO_InitStruct.Alternate = GPIO_AF7_USART2;
    HAL_GPIO_Init(GPIOD, &amp;amp;GPIO_InitStruct);

    /* USART2 DMA Init */
    /* USART2_RX Init */
    hdma_usart2_rx.Instance = DMA2_Stream0;
    hdma_usart2_rx.Init.Request = DMA_REQUEST_USART2_RX;
    hdma_usart2_rx.Init.Direction = DMA_PERIPH_TO_MEMORY;
    hdma_usart2_rx.Init.PeriphInc = DMA_PINC_DISABLE;
    hdma_usart2_rx.Init.MemInc = DMA_MINC_ENABLE;
    hdma_usart2_rx.Init.PeriphDataAlignment = DMA_PDATAALIGN_BYTE;
    hdma_usart2_rx.Init.MemDataAlignment = DMA_MDATAALIGN_BYTE;
    hdma_usart2_rx.Init.Mode = DMA_NORMAL;
    hdma_usart2_rx.Init.Priority = DMA_PRIORITY_HIGH;
    hdma_usart2_rx.Init.FIFOMode = DMA_FIFOMODE_DISABLE; /***@note should be disabled, could be problematic with the RTO feature of the UART Rx  */
    hdma_usart2_rx.Init.FIFOThreshold = DMA_FIFO_THRESHOLD_HALFFULL;
    hdma_usart2_rx.Init.MemBurst = DMA_MBURST_SINGLE;
    hdma_usart2_rx.Init.PeriphBurst = DMA_PBURST_SINGLE;
    if (HAL_DMA_Init(&amp;amp;hdma_usart2_rx) != HAL_OK)
    {
      Error_Handler();
    }

    __HAL_LINKDMA(uartHandle,hdmarx,hdma_usart2_rx);

    /* USART2_TX Init */
    hdma_usart2_tx.Instance = DMA2_Stream1;
    hdma_usart2_tx.Init.Request = DMA_REQUEST_USART2_TX;
    hdma_usart2_tx.Init.Direction = DMA_MEMORY_TO_PERIPH;
    hdma_usart2_tx.Init.PeriphInc = DMA_PINC_DISABLE;
    hdma_usart2_tx.Init.MemInc = DMA_MINC_ENABLE;
    hdma_usart2_tx.Init.PeriphDataAlignment = DMA_PDATAALIGN_BYTE;
    hdma_usart2_tx.Init.MemDataAlignment = DMA_MDATAALIGN_BYTE;
    hdma_usart2_tx.Init.Mode = DMA_NORMAL;
    hdma_usart2_tx.Init.Priority = DMA_PRIORITY_LOW;
    hdma_usart2_tx.Init.FIFOMode = DMA_FIFOMODE_ENABLE;
    hdma_usart2_tx.Init.FIFOThreshold = DMA_FIFO_THRESHOLD_HALFFULL;
    hdma_usart2_tx.Init.MemBurst = DMA_MBURST_SINGLE;
    hdma_usart2_tx.Init.PeriphBurst = DMA_PBURST_SINGLE;
    if (HAL_DMA_Init(&amp;amp;hdma_usart2_tx) != HAL_OK)
    {
      Error_Handler();
    }

    __HAL_LINKDMA(uartHandle,hdmatx,hdma_usart2_tx);

    /* USART2 interrupt Init */
    HAL_NVIC_SetPriority(USART2_IRQn, 6, 0);
    HAL_NVIC_EnableIRQ(USART2_IRQn);
  /* USER CODE BEGIN USART2_MspInit 1 */
    HAL_NVIC_SetPriority(USART2_IRQn, ISR_PRIO_USART2, 0);
  /* USER CODE END USART2_MspInit 1 */&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;void HAL_MspInit(void)
{
  /* USER CODE BEGIN MspInit 0 */

  /* USER CODE END MspInit 0 */

  __HAL_RCC_SYSCFG_CLK_ENABLE();

  /* System interrupt init*/
  /* MemoryManagement_IRQn interrupt configuration */
//  HAL_NVIC_SetPriority(MemoryManagement_IRQn, 5, 0);
//  /* BusFault_IRQn interrupt configuration */
//  HAL_NVIC_SetPriority(BusFault_IRQn, 5, 0);
//  /* UsageFault_IRQn interrupt configuration */
//  HAL_NVIC_SetPriority(UsageFault_IRQn, 5, 0);
//  /* SVCall_IRQn interrupt configuration */
//  HAL_NVIC_SetPriority(SVCall_IRQn, 5, 0);
//  /* DebugMonitor_IRQn interrupt configuration */
//  HAL_NVIC_SetPriority(DebugMonitor_IRQn, 5, 0);
//  /* PendSV_IRQn interrupt configuration */
//  HAL_NVIC_SetPriority(PendSV_IRQn, 15, 0);

  /* USER CODE BEGIN MspInit 1 */

  /* USER CODE END MspInit 1 */
}&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;And on nRF32 side:&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;#ifndef NRFX_UARTE_ENABLED
#define NRFX_UARTE_ENABLED 1
#endif
// &amp;lt;o&amp;gt; NRFX_UARTE0_ENABLED - Enable UARTE0 instance
#ifndef NRFX_UARTE0_ENABLED
#define NRFX_UARTE0_ENABLED 0
#endif

// &amp;lt;o&amp;gt; NRFX_UARTE_DEFAULT_CONFIG_HWFC  - Hardware Flow Control

// &amp;lt;0=&amp;gt; Disabled
// &amp;lt;1=&amp;gt; Enabled

#ifndef NRFX_UARTE_DEFAULT_CONFIG_HWFC
#define NRFX_UARTE_DEFAULT_CONFIG_HWFC 0
#endif

// &amp;lt;o&amp;gt; NRFX_UARTE_DEFAULT_CONFIG_PARITY  - Parity

// &amp;lt;0=&amp;gt; Excluded
// &amp;lt;14=&amp;gt; Included

#ifndef NRFX_UARTE_DEFAULT_CONFIG_PARITY
#define NRFX_UARTE_DEFAULT_CONFIG_PARITY 0
#endif

// &amp;lt;o&amp;gt; NRFX_UARTE_DEFAULT_CONFIG_BAUDRATE  - Default Baudrate

// &amp;lt;323584=&amp;gt; 1200 baud
// &amp;lt;643072=&amp;gt; 2400 baud
// &amp;lt;1290240=&amp;gt; 4800 baud
// &amp;lt;2576384=&amp;gt; 9600 baud
// &amp;lt;3862528=&amp;gt; 14400 baud
// &amp;lt;5152768=&amp;gt; 19200 baud
// &amp;lt;7716864=&amp;gt; 28800 baud
// &amp;lt;8388608=&amp;gt; 31250 baud
// &amp;lt;10289152=&amp;gt; 38400 baud
// &amp;lt;15007744=&amp;gt; 56000 baud
// &amp;lt;15400960=&amp;gt; 57600 baud
// &amp;lt;20615168=&amp;gt; 76800 baud
// &amp;lt;30801920=&amp;gt; 115200 baud
// &amp;lt;61865984=&amp;gt; 230400 baud
// &amp;lt;67108864=&amp;gt; 250000 baud
// &amp;lt;121634816=&amp;gt; 460800 baud
// &amp;lt;251658240=&amp;gt; 921600 baud
// &amp;lt;268435456=&amp;gt; 1000000 baud

#ifndef NRFX_UARTE_DEFAULT_CONFIG_BAUDRATE
#define NRFX_UARTE_DEFAULT_CONFIG_BAUDRATE 251658240
#endif

// &amp;lt;o&amp;gt; NRFX_UARTE_DEFAULT_CONFIG_IRQ_PRIORITY  - Interrupt priority

// &amp;lt;0=&amp;gt; 0 (highest)
// &amp;lt;1=&amp;gt; 1
// &amp;lt;2=&amp;gt; 2
// &amp;lt;3=&amp;gt; 3
// &amp;lt;4=&amp;gt; 4
// &amp;lt;5=&amp;gt; 5
// &amp;lt;6=&amp;gt; 6
// &amp;lt;7=&amp;gt; 7

#ifndef NRFX_UARTE_DEFAULT_CONFIG_IRQ_PRIORITY
#define NRFX_UARTE_DEFAULT_CONFIG_IRQ_PRIORITY 6
#endif&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;in makefile:&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;  $(SDK_ROOT)/components/libraries/bootloader/serial_dfu/nrf_dfu_serial.c \
  $(SDK_ROOT)/integration/nrfx/legacy/nrf_drv_uart.c \
  $(SDK_ROOT)/modules/nrfx/drivers/src/nrfx_uart.c \
  $(SDK_ROOT)/modules/nrfx/drivers/src/nrfx_uarte.c \
  $(SDK_ROOT)/modules/nrfx/drivers/src/prs/nrfx_prs.c
#  $(SDK_ROOT)/components/libraries/bootloader/serial_dfu/nrf_dfu_serial_uart.c \
  
INC_FOLDERS += \
  $(SDK_ROOT)/integration/nrfx/legacy \
  $(SDK_ROOT)/modules/nrfx/drivers/include \&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;--&amp;gt; What I also noticed is that in the above measurements of UART the Stop bit is present, just not long enough. What might cause this? Maybe the unconventional UART frequency?&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;--&amp;gt; The reason for the Hardware being suspicious is that the error only occurs sometimes and only on some devices&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Issue with updating nRF52832 over USART</title><link>https://devzone.nordicsemi.com/thread/366546?ContentTypeID=1</link><pubDate>Thu, 05 May 2022 18:10:07 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:25c48fd0-2ed4-4daa-ae64-bbade056d8fa</guid><dc:creator>Susheel Nuguru</dc:creator><description>[quote user=""]We get a UART error: 4 and when we observe the UART lines we see that on the TX line of the nRF the stop bit is not present. I assume the nRF does not pull the line high properly after transmitting a frame. (we do not use pull-up resistors on the USART lines on STM32L4 side)[/quote]
&lt;p&gt;This UART error:4, is it on the nRF end or the STM end? UART on nrf52832 is quite mature peripheral and I do not suspect that there is an hardware issue with it.&lt;/p&gt;
&lt;p&gt;There probably is a configuration issue with the pullup on the nRF side or the STM side.&lt;/p&gt;
&lt;p&gt;Can you show some code snippets on how you are configuring the pins on the UART on nRF side?.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>