Nordic UART 2MBit

Dear Forum,

I am using the provided BLE-NUS UART examples (central/peripheral) to create a COM link via bluetooth.

As I failed to generate a setup which directly operates on 2MBit (including advertising), I considered the following threads:

 Fatal error while adding 2Mbps PHY 

AND:

 how to enable 2mbps 

Now, ending up as described in Thread #2, I did use the following code in ble_evt_handler:

            case BLE_GAP_EVT_CONNECTED:
                NRF_LOG_INFO("Connected");
                m_conn_handle = p_ble_evt->evt.gap_evt.conn_handle;
                //err_code = nrf_ble_qwr_conn_handle_assign(&m_qwr, m_conn_handle);
                APP_ERROR_CHECK(err_code);
                myTrans.nusAct[0]|=2;
                myTrans.fDisconn=0;

                ble_gap_phys_t const phys =
                {
                    .rx_phys = BLE_GAP_PHY_2MBPS,
                    .tx_phys = BLE_GAP_PHY_2MBPS,
                };
                err_code = sd_ble_gap_phy_update(m_conn_handle, &phys);
                APP_ERROR_CHECK(err_code);

                break;

(I do not use the qwr, I have working code which was assured during tests with 1MBit mode).

The strange thing is now:

Everything seems to work fine, but I do not see an increase in transmission speed, whereas using the same code and switching to coded_phy (128k) renders a transmission speed of approximately the expected 1/8th of standard 1MBit mode.

So I wonder, if there are special settings required to activate 2MBit and be able to USE the double transfer rate?

FYI: I use NRF DK52833 (peripheral) and EV-BM833 (central) as hardware.

Best regards,

Richard

Parents
  • Hi

    Please check out this case, where this topic has been discussed already, and my colleague Edvin has uploaded an example project where he has combined the Nordic UART Service and throughput projects to maximize UART throughput.

    Best regards,

    Simon

  • Hello Simon,

    Thank you for the suggestion. I downloaded the zip, extracted (in the correct path relation to libs) to SDK_17.0.2_d674dde which I'm using and compiling ble_app_uart_c, I got the following errors after successful compilation during linking with SES:


      Generating linker script 'ble_app_uart_c_pca10056_s140.ld'
      Linking ble_app_uart_c_pca10056_s140.elf
        Output/Release/Obj/ble_app_uart_c_pca10056_s140/ses_startup_nrf_common.o: in function `InitializeUserMemorySections':
        undefined reference to `__RAM1_segment_end__'
        Output/Release/Obj/ble_app_uart_c_pca10056_s140/main.o: in function `main':
        undefined reference to `ble_nus_c_string_send_old'
    Build failed

    The ___RAM1_segment_end__ error also applies to the ble_app_uart.

    Additional info: I used the pca10056_s140 definitions for usage, because these are most similar to the projects I used for my development.

    I use SES 5.44 on Xubuntu 20.04 LTS.

    Maybe Edwin could take a look and suggest solutions?

    Best regards,

    Richard

Reply
  • Hello Simon,

    Thank you for the suggestion. I downloaded the zip, extracted (in the correct path relation to libs) to SDK_17.0.2_d674dde which I'm using and compiling ble_app_uart_c, I got the following errors after successful compilation during linking with SES:


      Generating linker script 'ble_app_uart_c_pca10056_s140.ld'
      Linking ble_app_uart_c_pca10056_s140.elf
        Output/Release/Obj/ble_app_uart_c_pca10056_s140/ses_startup_nrf_common.o: in function `InitializeUserMemorySections':
        undefined reference to `__RAM1_segment_end__'
        Output/Release/Obj/ble_app_uart_c_pca10056_s140/main.o: in function `main':
        undefined reference to `ble_nus_c_string_send_old'
    Build failed

    The ___RAM1_segment_end__ error also applies to the ble_app_uart.

    Additional info: I used the pca10056_s140 definitions for usage, because these are most similar to the projects I used for my development.

    I use SES 5.44 on Xubuntu 20.04 LTS.

    Maybe Edwin could take a look and suggest solutions?

    Best regards,

    Richard

Children
No Data
Related