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

nRF9160 DK secure boot baud 9600

Dear, 

secure_boot

I tried to change baud of UART0 from 115200 to 9600  

nrf9160_pca10090.overlay 

/* needed to get the NRF_UARTE2 defined */
&uart2 {
	current-speed = <19200>;
	status = "ok";
	tx-pin = <18>;
	rx-pin = <17>;
	rts-pin = <19>;
	cts-pin = <21>;
};

&uart0 {
	status = "ok";
	current-speed = <9600>;
	tx-pin = <29>;
	rx-pin = <28>;
	rts-pin = <27>;
	cts-pin = <26>;
};

and nrf9160_pca10090.dts

/*
 * Copyright (c) 2017 Linaro Limited
 * Copyright (c) 2018 Nordic Semiconductor ASA
 *
 * SPDX-License-Identifier: Apache-2.0
 */

/dts-v1/;
#include <nordic/nrf9160_xxaa.dtsi>

/ {
	model = "Nordic PCA10090 Dev Kit";
	compatible = "nordic,pca10090-dk", "nordic,nrf9160-xxaa";

	chosen {
		zephyr,console = &uart0;
		zephyr,sram = &sram0;
		zephyr,flash = &flash0;
	};

	aliases {
		led0 = &led0;
		led1 = &led1;
		led2 = &led2;
		led3 = &led3;
		sw0 = &button2;
		sw1 = &button3;
		sw2 = &button0;
		sw3 = &button1;
	};

	leds {
		compatible = "gpio-leds";
		led0: led_0 {
			gpios = <&gpio0 2 GPIO_INT_ACTIVE_LOW>;
			label = "Green LED 0";
		};
		led1: led_1 {
			gpios = <&gpio0 3 GPIO_INT_ACTIVE_LOW>;
			label = "Green LED 1";
		};
		led2: led_2 {
			gpios = <&gpio0 4 GPIO_INT_ACTIVE_LOW>;
			label = "Green LED 2";
		};
		led3: led_3 {
			gpios = <&gpio0 5 GPIO_INT_ACTIVE_LOW>;
			label = "Green LED 3";
		};
	};

	buttons {
		compatible = "gpio-keys";
		button0: button_0 {
			gpios = <&gpio0 8 GPIO_PUD_PULL_UP>;
			label = "Switch 1";
		};
		button1: button_1 {
			gpios = <&gpio0 9 GPIO_PUD_PULL_UP>;
			label = "Switch 2";
		};
		button2: button_2 {
			gpios = <&gpio0 6 GPIO_PUD_PULL_UP>;
			label = "Push button 1";
		};
		button3: button_3 {
			gpios = <&gpio0 7 GPIO_PUD_PULL_UP>;
			label = "Push button 2";
		};
	};

	sram0_bsd: memory@20010000 {
		device_type = "memory";
		compatible = "mmio-sram";
	};
};

&uart0 {
	status = "ok";
	current-speed = <9600>;
	tx-pin = <29>;
	rx-pin = <28>;
	rts-pin = <27>;
	cts-pin = <26>;
};

&uart1 {
	status = "ok";
	current-speed = <115200>;
	tx-pin = <1>;
	rx-pin = <0>;
	rts-pin = <14>;
	cts-pin = <15>;
};

&gpiote {
	status = "ok";
};

&gpio0 {
	status = "ok";
};

&timer0 {
	status = "ok";
};

&flash0 {
	/*
	 * For more information, see:
	 * http://docs.zephyrproject.org/devices/dts/flash_partitions.html
	 */
	partitions {
		compatible = "fixed-partitions";
		#address-cells = <1>;
		#size-cells = <1>;

		boot_partition: partition@0 {
			label = "mcuboot";
			reg = <0x00000000 0x10000>;
		};
		slot0_partition: partition@10000 {
			label = "image-0";
		};
#if defined(CONFIG_ARM_TRUSTZONE_M)
		slot0_ns_partition: partition@40000 {
			label = "image-0-nonsecure";
		};
#endif
		slot1_partition: partition@80000 {
			label = "image-1";
		};
#if defined(CONFIG_ARM_TRUSTZONE_M)
		slot1_ns_partition: partition@b0000 {
			label = "image-1-nonsecure";
		};
#endif
		scratch_partition: partition@f0000 {
			label = "image-scratch";
			reg = <0x000f0000 0xa000>;
		};

		storage_partition: partition@fa000 {
			label = "storage";
			reg = <0x000fa000 0x00006000>;
		};
	};
};

#if defined(CONFIG_ARM_TRUSTZONE_M)
/ {
	sram0_ns: memory@20020000 {
		device_type = "memory";
		compatible = "mmio-sram";
	};
};
#endif

/* Include partition configuration file */
#include "nrf9160_pca10090_partition_conf.dts"

Then, run LTE Link Monitor of nRF Connect 

Look like it DID NOT work with 9600 bps baud?

and I tried another app: Termite 

the reports came, but for a short time (4s), Termite terminated automatically !!  

My hex file: secure_boot_9600.hex

Plz, can you tell me why? I couldnt use 9600 bps baud?

Thanks, 

Regards, 

hng

Parents
  • Hello, 

    Can you please elaborate on what you are trying to accomplish? I have not been able to reproduce your issue yet, or look into your code, but will soon.
    The LTE Link Monitor has a fixed baud rate of 115200, from what I understand. 

    Have you tried to set the baud rate in zephyr\ext\hal\nordic\nrfx_config_nrf9160.h? Or look at one of the Zephyr examples?

    // <o> NRFX_UARTE_DEFAULT_CONFIG_BAUDRATE  - Default Baudrate
    
    // <323584=> 1200 baud
    // <643072=> 2400 baud
    // <1290240=> 4800 baud
    // <2576384=> 9600 baud
    // <3862528=> 14400 baud
    // <5152768=> 19200 baud
    // <7716864=> 28800 baud
    // <8388608=> 31250 baud
    // <10289152=> 38400 baud
    // <15007744=> 56000 baud
    // <15400960=> 57600 baud
    // <20615168=> 76800 baud
    // <30801920=> 115200 baud
    // <61865984=> 230400 baud
    // <67108864=> 250000 baud
    // <121634816=> 460800 baud
    // <251658240=> 921600 baud
    // <268435456=> 1000000 baud
    
    #ifndef NRFX_UARTE_DEFAULT_CONFIG_BAUDRATE
    #define NRFX_UARTE_DEFAULT_CONFIG_BAUDRATE 30801920
    #endif

    Kind regards,
    Øyvind

Reply
  • Hello, 

    Can you please elaborate on what you are trying to accomplish? I have not been able to reproduce your issue yet, or look into your code, but will soon.
    The LTE Link Monitor has a fixed baud rate of 115200, from what I understand. 

    Have you tried to set the baud rate in zephyr\ext\hal\nordic\nrfx_config_nrf9160.h? Or look at one of the Zephyr examples?

    // <o> NRFX_UARTE_DEFAULT_CONFIG_BAUDRATE  - Default Baudrate
    
    // <323584=> 1200 baud
    // <643072=> 2400 baud
    // <1290240=> 4800 baud
    // <2576384=> 9600 baud
    // <3862528=> 14400 baud
    // <5152768=> 19200 baud
    // <7716864=> 28800 baud
    // <8388608=> 31250 baud
    // <10289152=> 38400 baud
    // <15007744=> 56000 baud
    // <15400960=> 57600 baud
    // <20615168=> 76800 baud
    // <30801920=> 115200 baud
    // <61865984=> 230400 baud
    // <67108864=> 250000 baud
    // <121634816=> 460800 baud
    // <251658240=> 921600 baud
    // <268435456=> 1000000 baud
    
    #ifndef NRFX_UARTE_DEFAULT_CONFIG_BAUDRATE
    #define NRFX_UARTE_DEFAULT_CONFIG_BAUDRATE 30801920
    #endif

    Kind regards,
    Øyvind

Children
Related