This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

External antenna J1 insert connector in nRF52833-DK

Hello! I use EK42423-03 and 52833-DK

Previous case 

I understand plugging in the SWF connector, Will disconnecting from the PCB antenna and routing the signal to the cable.

EK42423-03-Datasheet

LS ->GND CTRL -> P0.26 ; GND -> GNDVDD -> VDDJ1 RFC -> J1 ANT 

First follow this pic.

I added code in nrf52833dk_nrf52833.dts

    ant1: ant_1 {
			gpios = <&gpio0 26 GPIO_ACTIVE_LOW>; /*CTRL*/
			label = "ANT 1";
	};

Using multimeter can measure from RF2 to Refer to the pic.

RF1 = 0Ω 

RF2 = 20Ω 

But why? EK42423-03 "J1"  insert 52833-DK "J1" After Refer to the pic.

RF1 = 0Ω 

RF2 = 0Ω 

I do not know what is causing.

Sorry, it's been two months and I still can't do it...

But I still hope you can give me advice!

Thanks again for your support.

Parents
  • Nut sure why to try to ohm between the center conductor and the signal? Set the logic level manually first and get the switch sorted. Then check the code and see if you can set the pins high and low. 

  • Nut sure why to try to ohm between the center conductor and the signal

    To test if switching is possible according to the control logic truth table

    Set the logic level manually first

    I don't quite understand here, how to do it manually?


    get the switch sorted.

    Even without using an antenna array.
    also needs to be modified?

    I thought that as long as the function was written to switch back and forth
    #static const uint8_t ant_patterns[] = { 0x2, 0x0, 0x5, 0x6, 0x1, 0x4,
    					0xC, 0x9, 0xE, 0xD, 0x8, 0xA };
    
    static const uint8_t ant_patterns[] = { 0x2, 0xB};


    Is it like this?




    Then check the code and see if you can set the pins high and low.

        ant1: ant_1 {
    			gpios = <&gpio0 26 GPIO_ACTIVE_LOW>; /*LS*/
    			label = "ANT 1";
    	};

    Does adding ,in nrf52833dk_nrf52833.dts have no effect?

    Also I set it as output in main.c
    void main(void)
    {              
            const struct device *dev;
    	bool ant_is_on = true;
    	int ret;
    
    	dev = device_get_binding(ANT1);
    	if (dev == NULL) {
    		return;
    	}
    
    	gpio_pin_configure(dev, PIN, GPIO_OUTPUT_ACTIVE | FLAGS);
    	if (ret < 0) {
    		return;
    	}    

    I will continue to do my best!

Reply
  • Nut sure why to try to ohm between the center conductor and the signal

    To test if switching is possible according to the control logic truth table

    Set the logic level manually first

    I don't quite understand here, how to do it manually?


    get the switch sorted.

    Even without using an antenna array.
    also needs to be modified?

    I thought that as long as the function was written to switch back and forth
    #static const uint8_t ant_patterns[] = { 0x2, 0x0, 0x5, 0x6, 0x1, 0x4,
    					0xC, 0x9, 0xE, 0xD, 0x8, 0xA };
    
    static const uint8_t ant_patterns[] = { 0x2, 0xB};


    Is it like this?




    Then check the code and see if you can set the pins high and low.

        ant1: ant_1 {
    			gpios = <&gpio0 26 GPIO_ACTIVE_LOW>; /*LS*/
    			label = "ANT 1";
    	};

    Does adding ,in nrf52833dk_nrf52833.dts have no effect?

    Also I set it as output in main.c
    void main(void)
    {              
            const struct device *dev;
    	bool ant_is_on = true;
    	int ret;
    
    	dev = device_get_binding(ANT1);
    	if (dev == NULL) {
    		return;
    	}
    
    	gpio_pin_configure(dev, PIN, GPIO_OUTPUT_ACTIVE | FLAGS);
    	if (ret < 0) {
    		return;
    	}    

    I will continue to do my best!

Children
No Data
Related