Date   

Re: BLE Controller Core Spec 5.2 Power Control Feature

Khaled Elsayed
 

Thanks Vinayak for your informative reply and addressing issues 1 to 4.

Glad to know that Zephyr link layer control procedure design is going  through a major overhaul. It is much needed. It was not a straight forward task to add the LE PC draft code. 

I am cleaning up the LE PC code and should make a PR as soon as it is ready. Can I share it without testing? Just the messages and message processing logic.

BR,

Khaled Elsayed


On Wed, Aug 26, 2020 at 7:24 AM Chettimada, Vinayak Kariappa <vinayak.kariappa.chettimada@...> wrote:

Hi Khaled,

 

Currently the link layer is undergoing a major overhaul of the control procedure design. You can refer to the changes in the topic-ble-llcp branch.

 

That said, you are welcome to send a draft PR with your implementation, reviewers will guide you towards contributions that can be reused towards the new design.

 

  1. Acceptable power reduction would have to be based on custom algorithm and specific to vendors.
  2. Reviewers and automated test cases should help you with LLCP data flow management
  3. Yes, you should reuse the already defined connection context and HAL interfaces that the dynamic Tx Power feature uses.
  4. Most development happens test driven, either using unit tests, babblesim, and manual using tests added in tests/Bluetooth/shell application. You can add your tests and test applications. Unit tests and babblesim are exercised in Zephyr CI on every PR submission.

 

You can start by involving reviewers early by sending in draft PRs.

 

Regards,

Vinayak

 

From: devel@... <devel@...> On Behalf Of Khaled Elsayed via lists.zephyrproject.org
Sent: 24 August 2020 14:17
To: devel@...
Subject: [Zephyr-devel] BLE Controller Core Spec 5.2 Power Control Feature

 

Hello all,

 

I am working on the LE power control feature of Core Spec 5.2. I am almost 60-70% done defining the air-messages and the state machine within the llcp and he actions/behavior upon receiving PWR_CTRL_REQ/RSP or a related REJ. Also, not currently handling PWR_CTRL_IND and this should come later I guess. Feature still untested but it is in the pipeline.

 

Main issues now are:

1) Handling the APR (acceptable power reduction) in the PWR_CTRL_RSP

2) Insuring there are no leaks or any PWR_CTRL received pdu not released

3) Issuing command to change PHY TX power (I used the same method as in the host based TX power that this PR https://github.com/zephyrproject-rtos/zephyr/pull/19779 is addressing which seems to only change the connection TX power in the connection record and I guess the radio manager will then somehow use that to control the PHY?)

 

4) Overall testing. I need help here from the Zephyr Bluetooth developers.

 

Since this is my first potential contribution to Zephyr, I am following the contribution guidelines by posting in the mailing list to discuss the feature before proceeding with a pull request. 

 

Best regards,

 

Khaled Elsayed

 

 

 

_._,_._,_





The information contained in this message is privileged, confidential or otherwise protected from use and disclosure. If you are not the intended recipient, you are hereby notified that any review, disclosure, copying or dissemination of this message or the taking of any action in reliance on its contents, or other use is strictly prohibited.  If you received this message in error, please notify us immediately by replying to the message and deleting it from your computer.  Thank you.
Si-Vision, LLC.


Re: BLE Controller Core Spec 5.2 Power Control Feature

Chettimada, Vinayak Kariappa
 

Hi Khaled,

 

Currently the link layer is undergoing a major overhaul of the control procedure design. You can refer to the changes in the topic-ble-llcp branch.

 

That said, you are welcome to send a draft PR with your implementation, reviewers will guide you towards contributions that can be reused towards the new design.

 

  1. Acceptable power reduction would have to be based on custom algorithm and specific to vendors.
  2. Reviewers and automated test cases should help you with LLCP data flow management
  3. Yes, you should reuse the already defined connection context and HAL interfaces that the dynamic Tx Power feature uses.
  4. Most development happens test driven, either using unit tests, babblesim, and manual using tests added in tests/Bluetooth/shell application. You can add your tests and test applications. Unit tests and babblesim are exercised in Zephyr CI on every PR submission.

 

You can start by involving reviewers early by sending in draft PRs.

 

Regards,

Vinayak

 

From: devel@... <devel@...> On Behalf Of Khaled Elsayed via lists.zephyrproject.org
Sent: 24 August 2020 14:17
To: devel@...
Subject: [Zephyr-devel] BLE Controller Core Spec 5.2 Power Control Feature

 

Hello all,

 

I am working on the LE power control feature of Core Spec 5.2. I am almost 60-70% done defining the air-messages and the state machine within the llcp and he actions/behavior upon receiving PWR_CTRL_REQ/RSP or a related REJ. Also, not currently handling PWR_CTRL_IND and this should come later I guess. Feature still untested but it is in the pipeline.

 

Main issues now are:

1) Handling the APR (acceptable power reduction) in the PWR_CTRL_RSP

2) Insuring there are no leaks or any PWR_CTRL received pdu not released

3) Issuing command to change PHY TX power (I used the same method as in the host based TX power that this PR https://github.com/zephyrproject-rtos/zephyr/pull/19779 is addressing which seems to only change the connection TX power in the connection record and I guess the radio manager will then somehow use that to control the PHY?)

 

4) Overall testing. I need help here from the Zephyr Bluetooth developers.

 

Since this is my first potential contribution to Zephyr, I am following the contribution guidelines by posting in the mailing list to discuss the feature before proceeding with a pull request. 

 

Best regards,

 

Khaled Elsayed

 

 

 

The information contained in this message is privileged, confidential or otherwise protected from use and disclosure. If you are not the intended recipient, you are hereby notified that any review, disclosure, copying or dissemination of this message or the taking of any action in reliance on its contents, or other use is strictly prohibited.  If you received this message in error, please notify us immediately by replying to the message and deleting it from your computer.  Thank you.

Si-Vision, LLC.


Custom passkey not work. #ble #nrf52480

robert.konc@...
 

Hi,

I have problem using function bt_passkey_set(). Even if I use this function pairing use random number.
In application I use BT_SECURITY_L4 level. 

This is my config for Ble.

CONFIG_BT=y

CONFIG_BT_SMP=y

CONFIG_BT_SMP_SC_ONLY=y

CONFIG_BT_PERIPHERAL=y

CONFIG_BT_SETTINGS=y

CONFIG_BT_FIXED_PASSKEY=y

CONFIG_BT_MAX_CONN=2

CONFIG_BT_MAX_PAIRED=4

I use last master Zephyr repository for build.

Any idea?

Thank in advance.

 



Zephyr Project: APIs - Tue, 08/25/2020 4:00pm-5:00pm, Please RSVP #cal-reminder

devel@lists.zephyrproject.org Calendar <devel@...>
 

Reminder: Zephyr Project: APIs

When: Tuesday, 25 August 2020, 4:00pm to 5:00pm, (GMT+00:00) UTC

Where:Microsoft Teams Meeting

An RSVP is requested. Click here to RSVP

Organizer: devel@...

Description:

Meeting decisions/discussions in their respective PRs, tracked here: https://github.com/zephyrproject-rtos/zephyr/projects/18


________________________________________________________________________________
+1 321-558-6518 United States, Orlando (Toll)
Conference ID: 317 990 129#
Local numbers | Reset PIN | Learn more about Teams | Meeting options
 
 
________________________________________________________________________________


API meeting: agenda

Carles Cufi
 


Re: C++ user apps

Kim Bøndergaard
 


For application code it seems to be OK. You just have to enable it properly in your config:
Some of the configs I've been using:

CONFIG_STD_CPP11=y / CONFIG_STD_CPP14=y
CONFIG_NEWLIB_LIBC=y
CONFIG_CPLUSPLUS=y
CONFIG_LIB_CPLUSPLUS=y
CONFIG_RTTI=y

Beware of some of the pitfalls with e.g. exceptions.

Kim Bøndergaard
Prevas A/S
Team Manager / Systems Architect
 
Hedeager 3, DK-8200 Aarhus N

Phone +45 3315 9090
Mobile +45 5154 3961
kibo@... 
www.prevas.dk

 

 


From: devel@... <devel@...> on behalf of Simon Glass via lists.zephyrproject.org <sjg=chromium.org@...>
Sent: Monday, August 24, 2020 17:17
To: devel <devel@...>
Subject: [Zephyr-devel] C++ user apps
 
Hi,

Is there any guidance about using C++ in Zephyr? Is it common / recommended?

Does anyone have a link to a previous discussion?

Regards,
Simon




Re: C++ user apps

Peter A. Bigot
 

The meta-issue is: https://github.com/zephyrproject-rtos/zephyr/issues/18554

I personally am using C++20 but haven't got language-independent functionality to the point where I can really start making progress in a real application.  Generally C++ should work at application level and you stick to basic language capabilities avoiding things like atomic, thread, and (to some degree) exceptions.

Peter


C++ user apps

Simon Glass
 

Hi,

Is there any guidance about using C++ in Zephyr? Is it common / recommended?

Does anyone have a link to a previous discussion?

Regards,
Simon


BLE Controller Core Spec 5.2 Power Control Feature

Khaled Elsayed
 

Hello all,

I am working on the LE power control feature of Core Spec 5.2. I am almost 60-70% done defining the air-messages and the state machine within the llcp and he actions/behavior upon receiving PWR_CTRL_REQ/RSP or a related REJ. Also, not currently handling PWR_CTRL_IND and this should come later I guess. Feature still untested but it is in the pipeline.

Main issues now are:

1) Handling the APR (acceptable power reduction) in the PWR_CTRL_RSP

2) Insuring there are no leaks or any PWR_CTRL received pdu not released

3) Issuing command to change PHY TX power (I used the same method as in the host based TX power that this PR https://github.com/zephyrproject-rtos/zephyr/pull/19779 is addressing which seems to only change the connection TX power in the connection record and I guess the radio manager will then somehow use that to control the PHY?)

4) Overall testing. I need help here from the Zephyr Bluetooth developers.

Since this is my first potential contribution to Zephyr, I am following the contribution guidelines by posting in the mailing list to discuss the feature before proceeding with a pull request. 

Best regards,

Khaled Elsayed



The information contained in this message is privileged, confidential or otherwise protected from use and disclosure. If you are not the intended recipient, you are hereby notified that any review, disclosure, copying or dissemination of this message or the taking of any action in reliance on its contents, or other use is strictly prohibited.  If you received this message in error, please notify us immediately by replying to the message and deleting it from your computer.  Thank you.
Si-Vision, LLC.


Zephyr module and build settings. (BOARD, SOC, DTS, and ARCH root support)

Rasmussen, Torsten
 

Hi,

 

Zephyr modules has been extended to support multiple BOARD_ROOT, SOC_ROOT, DTS_ROOT, and ARCH_ROOT on command line.

Also Zephyr modules `module.yml` schema has been extended to allow modules to describe those roots as build settings.

 

For example:

build:

  settings:

    board_root: .

    dts_root: .

    soc_root: .

    arch_root: .

 

See more here: https://docs.zephyrproject.org/latest/guides/modules.html#build-settings

 

As part of this, the `SOC_DIR` in Kconfig files has been removed, and any Kconfig code relying on `SOC_DIR` must be updated, for example to use `rsource`.

If your code is currently having a Kconfig in `<my_soc_root>/<arch>/Kconfig` sourcing other files based on `SOC_DIR`:

 

<my_soc_root>/<arch>/Kconfig:

source $(SOC_DIR)/$(ARCH)/Kconfig.soc

 

then such code can be updated to:

rsource Kconfig.soc

 

For more details, see release notes and relevant PRs:

https://github.com/zephyrproject-rtos/zephyr/blob/master/doc/releases/release-notes-2.4.rst#build-and-infrastructure

https://github.com/zephyrproject-rtos/zephyr/pull/26715

https://github.com/zephyrproject-rtos/zephyr/pull/27431

 

 

Torsten Tejlmand Rasmussen

Senior R&D Engineer

P: +47 72 89 92 47

 

 

 

Nordic Semiconductor

Otto Nielsens veg 12, 7052 Trondheim, Norway

www.nordicsemi.com

 

 

        

 

 

           

 


Re: Cannot debug specific files #builds #debug #bluetooth #nrf52 #nrf52832

pawel.dunaj@...
 

Hi,
you can check the content of the build.ninja in the build directory. Look for the files that you suspect are built incorrectly and check the build flags. That should at least confirm that the problem is real.
Thanks,
Paweł


Cannot debug specific files #builds #debug #bluetooth #nrf52 #nrf52832

b.j.hendriks@...
 

Hello,

NOTE: I also posted this on github:https://github.com/zephyrproject-rtos/zephyr/issues/27706 I don't know which channel is the correct one for these types of issues. 

I have a question about debugging. I am using a nRF52 DK with Zephyr (sdk 0.11.3). I debug with Segger Ozone, using the zephyr.elf file and the recommended configurations: Target Interface: SWD,Interface Speed: 4000 KHz.
I try to debug a peripheral application: samples/bluetooth/peripheral_hr (tested with other apps as well).

In order to debug I need to disable some optimizations. I tried to configure this in the prj.conf which is located in the application folder (samples/bluetooth/peripheral_hr/prj.conf).

My config file looks like this:

CONFIG_BT=y
CONFIG_BT_DEBUG_LOG=y
CONFIG_BT_SMP=y
CONFIG_BT_PERIPHERAL=y
CONFIG_BT_GATT_DIS=y
CONFIG_BT_GATT_DIS_PNP=n
CONFIG_BT_GATT_BAS=y
CONFIG_BT_GATT_HRS=y
CONFIG_BT_DEVICE_NAME="Zephyr Heartrate Sensor"
CONFIG_BT_DEVICE_APPEARANCE=833

CONFIG_DEBUG=y
# CONFIG_NO_OPTIMIZATIONS=y

Without the debug configurations I can't traverse through the main.c correctly, but with the CONFIG_DEBUG flag enabled I can. But when I want to step in/over lines of code in:

zephyr/subsys/bluetooth/controller/ll_sw/nordic/lll/lll.c
or
zephyr/subsys/bluetooth/controller/ll_sw/nordic/hal/nrf5/radio/radio.c
and many more files in the controller

the debugger jumps to lines that doesn't exist or opens functions that are not present on that line. This is both for CONFIG_DEBUG and CONFIG_NO_OPTIMIZATIONS.

Somehow I think the bluetooth controller files for nordic are still optimized, and I can't find a method to disable the optimizations.

Also I found that enabling CONFIG_NO_OPTIMIZATIONS flag will not let me connect with the device anymore, is this intended?

Thank you,

Kind regards
John Hendriks


Pending pull requests needing reviews

lairdjm
 

Hi,

We have submitted 3 pull requests recently for adding new functionality to zephyr which are waiting to be merged/reviewed, is anyone able to have a look at the following PR’s to progress them?

Thanks,

Jamie


Zephyr Project: Dev Meeting - Thu, 08/20/2020 3:00pm-4:00pm, Please RSVP #cal-reminder

devel@lists.zephyrproject.org Calendar <devel@...>
 

Reminder: Zephyr Project: Dev Meeting

When: Thursday, 20 August 2020, 3:00pm to 4:00pm, (GMT+00:00) UTC

Where:Microsoft Teams Meeting

An RSVP is requested. Click here to RSVP

Organizer: devel@...

Description:

________________________________________________________________________________
+1 321-558-6518 United States, Orlando (Toll)
Conference ID: 483 314 739#
Local numbers | Reset PIN | Learn more about Teams | Meeting options
 
 
________________________________________________________________________________


Dev-Review Meeting Agenda Aug 20

Bolivar, Marti
 

Hi,

Kumar is out this week, so I'm sending the dev-review agenda.

* There are no open issues and just one seemingly stale PR (#24107) with
the "dev-review" label, so there doesn't seem to be anything open on
GitHub.

* We may use the meeting to continue discussion from Monday's Process WG
meeting about zephyr module update strategies, in particular one that
uses merge commits.

* Otherwise, we'll discuss any opens.

Thanks,
Martí


RFC: API Change: usb: Device argument to USB HID ops

Obalski, Emil <Emil.Obalski@...>
 

Hello,

 

I would like to post an RFC issue in USB subsystem. Here is the link for the issue itself:

 

And the proposed PR resolving the issue:

 

Kind regards,

Emil Obalski | Firmware Engineer
M +48 726 457 478| Kraków, Poland
nordicsemi.com | devzone.nordicsemi.com

Nordic_logo_signature

 


Zephyr Project: APIs - Tue, 08/18/2020 4:00pm-5:00pm, Please RSVP #cal-reminder

devel@lists.zephyrproject.org Calendar <devel@...>
 

Reminder: Zephyr Project: APIs

When: Tuesday, 18 August 2020, 4:00pm to 5:00pm, (GMT+00:00) UTC

Where:Microsoft Teams Meeting

An RSVP is requested. Click here to RSVP

Organizer: devel@...

Description:

Meeting decisions/discussions in their respective PRs, tracked here: https://github.com/zephyrproject-rtos/zephyr/projects/18


________________________________________________________________________________
+1 321-558-6518 United States, Orlando (Toll)
Conference ID: 317 990 129#
Local numbers | Reset PIN | Learn more about Teams | Meeting options
 
 
________________________________________________________________________________


Re: LVGL support and more examples

Lazar Chervenkov <lazar.chervenkov@...>
 

Hi Jan,

I'm using Nordic Connect SDK with Segger Embedded Studio, maybe that's why I'm confused. There is no option to select the shield in Segger and the nordic people forwarded me to Zephyr for help. So it's a magic circle :)

I also have a custom display shield with different spi pins and from the shield documentation I cannot understand how to remap the spi signals. The display driver is also different and I have to write it (it's a Sharp MIP LCD that I use).

Many thanks!

On Tue, Aug 18, 2020 at 8:29 AM Jan Van Winkel <jan.van_winkel@...> wrote:
Hi Lazar,

Not sure if your question is about how to tell LVGL which display to use or how to select a specific display controller.

The former is done by setting CONFIG_LVGL_DISPLAY_DEV_NAME to the same name as used by the display controller. Note that in case you are using any of the supported display shields, the shields config will take care of setting the correct value for CONFIG_LVGL_DISPLAY_DEV_NAME.

The later one, display controller selection, depends on the board you are using but all in-tree nrf52 boards, to my knowledge, make use of display shields and do not have on board display controllers. So the only thing you need is to pass the correct shield name during build.
For example to use the NRF52840 DK with an adafruit 2.8" TFT shield you can use following command to build: west build -b nrf52840dk_nrf52840 samples/gui/lvgl -- -DSHIELD=adafruit_2_8_tft_touch_v2

Jan

On Mon, Aug 17, 2020 at 10:49 PM Lazar Chervenkov <lazar.chervenkov@...> wrote:
Hi Carles,

I don't understand how to select which driver is used for the current project, as all are listed in the kconfig.

Thanks!

On Tue, 4 Aug 2020, 16:59 Cufi, Carles, <Carles.Cufi@...> wrote:

Hi there,

 

LVGL has been updated to version 7 in master:

https://github.com/zephyrproject-rtos/zephyr/pull/26982

 

Changing the display driver is done in Kconfig (and I assume Devicetree):

 

https://github.com/zephyrproject-rtos/zephyr/blob/master/drivers/display/Kconfig

 

Carles

 

 

From: devel@... <devel@...> On Behalf Of lazar.chervenkov via lists.zephyrproject.org
Sent: 04 August 2020 14:27
To: devel@...
Subject: [Zephyr-devel] LVGL support and more examples

 

Hi there,

I've been using LVGL for creating GUIs together with Nordic nRF5 SDK. I have to move to nRF Connect SDK for developing with nRF53 (which is actually based on Zephyr project). I'm quite new to Zephyr and I opened the LVGL example for nRF52840. But I'm using a different display driver and I cannot find a way how to change it. The information in the documentation is quite poor for this topic. Is there a plan to also move to LVGL version 7, as the one that is used now is version 6. 

Many thanks!



--
Mag. Lazar Chervenkov
phone: +4367761600476
e-mail: lazar.chervenkov@...


Re: LVGL support and more examples

Jan Van Winkel
 

Hi Lazar,

Not sure if your question is about how to tell LVGL which display to use or how to select a specific display controller.

The former is done by setting CONFIG_LVGL_DISPLAY_DEV_NAME to the same name as used by the display controller. Note that in case you are using any of the supported display shields, the shields config will take care of setting the correct value for CONFIG_LVGL_DISPLAY_DEV_NAME.

The later one, display controller selection, depends on the board you are using but all in-tree nrf52 boards, to my knowledge, make use of display shields and do not have on board display controllers. So the only thing you need is to pass the correct shield name during build.
For example to use the NRF52840 DK with an adafruit 2.8" TFT shield you can use following command to build: west build -b nrf52840dk_nrf52840 samples/gui/lvgl -- -DSHIELD=adafruit_2_8_tft_touch_v2

Jan

On Mon, Aug 17, 2020 at 10:49 PM Lazar Chervenkov <lazar.chervenkov@...> wrote:
Hi Carles,

I don't understand how to select which driver is used for the current project, as all are listed in the kconfig.

Thanks!

On Tue, 4 Aug 2020, 16:59 Cufi, Carles, <Carles.Cufi@...> wrote:

Hi there,

 

LVGL has been updated to version 7 in master:

https://github.com/zephyrproject-rtos/zephyr/pull/26982

 

Changing the display driver is done in Kconfig (and I assume Devicetree):

 

https://github.com/zephyrproject-rtos/zephyr/blob/master/drivers/display/Kconfig

 

Carles

 

 

From: devel@... <devel@...> On Behalf Of lazar.chervenkov via lists.zephyrproject.org
Sent: 04 August 2020 14:27
To: devel@...
Subject: [Zephyr-devel] LVGL support and more examples

 

Hi there,

I've been using LVGL for creating GUIs together with Nordic nRF5 SDK. I have to move to nRF Connect SDK for developing with nRF53 (which is actually based on Zephyr project). I'm quite new to Zephyr and I opened the LVGL example for nRF52840. But I'm using a different display driver and I cannot find a way how to change it. The information in the documentation is quite poor for this topic. Is there a plan to also move to LVGL version 7, as the one that is used now is version 6. 

Many thanks!


Re: LVGL support and more examples

Lazar Chervenkov <lazar.chervenkov@...>
 

Hi Carles,

I don't understand how to select which driver is used for the current project, as all are listed in the kconfig.

Thanks!

On Tue, 4 Aug 2020, 16:59 Cufi, Carles, <Carles.Cufi@...> wrote:

Hi there,

 

LVGL has been updated to version 7 in master:

https://github.com/zephyrproject-rtos/zephyr/pull/26982

 

Changing the display driver is done in Kconfig (and I assume Devicetree):

 

https://github.com/zephyrproject-rtos/zephyr/blob/master/drivers/display/Kconfig

 

Carles

 

 

From: devel@... <devel@...> On Behalf Of lazar.chervenkov via lists.zephyrproject.org
Sent: 04 August 2020 14:27
To: devel@...
Subject: [Zephyr-devel] LVGL support and more examples

 

Hi there,

I've been using LVGL for creating GUIs together with Nordic nRF5 SDK. I have to move to nRF Connect SDK for developing with nRF53 (which is actually based on Zephyr project). I'm quite new to Zephyr and I opened the LVGL example for nRF52840. But I'm using a different display driver and I cannot find a way how to change it. The information in the documentation is quite poor for this topic. Is there a plan to also move to LVGL version 7, as the one that is used now is version 6. 

Many thanks!

481 - 500 of 7760