This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

nrf9160 uart Pull-Up and power consumption

hi all,

i'm trying to disable uart for lower power consumption, i've disables it with:

NRF_UARTE1->TASKS_STOPTX = 1;
NRF_UARTE1->TASKS_STOPRX = 1;


but when i measure the voltage on the rx pin i see 1.8V  (this seems to consume current on the device on the other side of the uart interface - which is turned off )
i assume its in pulled up state, so i'm trying to change it's state to no-pull:
nrf_uarte_txrx_pins_disconnect(NRF_UARTE0);
gpio_pin_configure(uart_wifi, 18, GPIO_PUD_PULL_DOWN);
gpio_pin_configure(uart_wifi, 19, GPIO_PUD_PULL_DOWN);
gpio_pin_write(uart_wifi, 18,0);
gpio_pin_write(uart_wifi, 19,0);

 but it doesnt seem to have any effect.

how can i set this pin to 0, and back to 1 when I need it , on runtime?

Thanks

Moshe

Parents
  • Hi Moshe, 

    Is the external IC power gated? It should drive the RX line to 'high' when it's inactive and powered. So that may explain why you see the current draw when you set the output to 0. 

    Also, from your code snippets, it appears that you are stopping UART instance 1 while nrf_uarte_txrx_pins_disconnect() call takes instance 0 as an argument. Not sure if this is intended or not.

    Best regards,

    Vidar

Reply
  • Hi Moshe, 

    Is the external IC power gated? It should drive the RX line to 'high' when it's inactive and powered. So that may explain why you see the current draw when you set the output to 0. 

    Also, from your code snippets, it appears that you are stopping UART instance 1 while nrf_uarte_txrx_pins_disconnect() call takes instance 0 as an argument. Not sure if this is intended or not.

    Best regards,

    Vidar

Children
Related