Skip to content

Conversation

@ankuns
Copy link
Contributor

@ankuns ankuns commented Mar 17, 2025

This PR brings in a temperature compensation feature for the nrf2220 Front-End Module.

The API exposed by https://github.com/nrfconnect/sdk-nrfxlib/blob/main/mpsl/fem/nrf2220/include/protocol/mpsl_fem_nrf2220_protocol_api.h
is used.

The nRF2220 temperature compensation feature is enabled by the new Kconfig option
MPSL_FEM_NRF2220_TEMPERATURE_COMPENSATION.
The temperature is provided by either taking the SoC temperature (default) Kconfig option MPSL_FEM_NRF2220_TEMPERATURE_SOURCE_SOC or is provided by user MPSL_FEM_NRF2220_TEMPERATURE_SOURCE_CUSTOM.

The feature requires a i2c_nrfx_twim driver extension covered by PR nrfconnect/sdk-zephyr#2624

@ankuns ankuns requested review from a team as code owners March 17, 2025 07:35
@github-actions github-actions bot added doc-required PR must not be merged without tech writer approval. manifest changelog-entry-required Update changelog before merge. Remove label if entry is not needed or already added. labels Mar 17, 2025
@NordicBuilder
Copy link
Contributor

NordicBuilder commented Mar 17, 2025

The following west manifest projects have changed revision in this Pull Request:

Name Old Revision New Revision Diff
zephyr nrfconnect/sdk-zephyr@4ba36f2 (main) nrfconnect/sdk-zephyr#2624 nrfconnect/sdk-zephyr#2624/files

DNM label due to: 1 project with PR revision

Note: This message is automatically posted and updated by the Manifest GitHub Action.

@NordicBuilder
Copy link
Contributor

NordicBuilder commented Mar 17, 2025

CI Information

To view the history of this post, clich the 'edited' button above
Build number: 12

Inputs:

Sources:

sdk-nrf: PR head: 7306a64322a9daf45c338fe77e042c6d25835485
zephyr: PR head: fb830d8bfcde6e58de8efd7617f54feaa9b8ff5f

more details

sdk-nrf:

PR head: 7306a64322a9daf45c338fe77e042c6d25835485
merge base: 385e5bff216e8c4c3f45dc0475d14d540e517f0b
target head (main): 634e1bba37b5bf4b438dd1a243ac43aca1593217
Diff

zephyr:

PR head: fb830d8bfcde6e58de8efd7617f54feaa9b8ff5f
merge base: 4ba36f2e6f4e9ba5384c664b398d5186c9a1252b
target head (main): a2aa12bb3dcc1e9fac6ce451692f326bf6a6467c
Diff

Github labels

Enabled Name Description
ci-disabled Disable the ci execution
ci-all-test Run all of ci, no test spec filtering will be done
ci-force-downstream Force execution of downstream even if twister fails
ci-run-twister Force run twister
ci-run-zephyr-twister Force run zephyr twister
List of changed files detected by CI (16)
doc
│  ├── nrf
│  │  ├── app_dev
│  │  │  ├── device_guides
│  │  │  │  ├── fem
│  │  │  │  │  │ fem_nrf2220.rst
lib
│  ├── fem_al
│  │  │ fem_al.c
subsys
│  ├── mpsl
│  │  ├── fem
│  │  │  ├── Kconfig
│  │  │  ├── common
│  │  │  │  ├── include
│  │  │  │  │  │ mpsl_fem_twi_drv.h
│  │  │  │  │ mpsl_fem_twi_drv.c
│  │  │  ├── nrf2220
│  │  │  │  │ mpsl_fem_nrf2220.c
west.yml
zephyr
│  ├── drivers
│  │  ├── i2c
│  │  │  │ i2c_nrfx_twim.c
│  ├── include
│  │  ├── zephyr
│  │  │  ├── drivers
│  │  │  │  ├── i2c
│  │  │  │  │  │ i2c_nrfx_twim.h
│  ├── tests
│  │  ├── drivers
│  │  │  ├── i2c
│  │  │  │  ├── i2c_nrfx_twim
│  │  │  │  │  ├── CMakeLists.txt
│  │  │  │  │  ├── boards
│  │  │  │  │  │  ├── nrf5340dk_nrf5340_cpuapp.overlay
│  │  │  │  │  │  ├── nrf54h20dk_nrf54h20_cpuapp.overlay
│  │  │  │  │  │  │ nrf54l15dk_nrf54l15_cpuapp.overlay
│  │  │  │  │  ├── prj.conf
│  │  │  │  │  ├── src
│  │  │  │  │  │  │ test_i2c_nrfx_twim.c
│  │  │  │  │  │ testcase.yaml

Outputs:

Toolchain

Version: 4ffa2202d5
Build docker image: docker-dtr.nordicsemi.no/sw-production/ncs-build:4ffa2202d5_e579f9fbe6

Test Spec & Results: ✅ Success; ❌ Failure; 🟠 Queued; 🟡 Progress; ◻️ Skipped; ⚠️ Quarantine

  • ◻️ Toolchain - Skipped: existing toolchain is used
  • ✅ Build twister - Skipped: Skipping Build & Test as it succeeded in a previous run: 11
  • ✅ Integration tests
    • ✅ test-sdk-audio - Skipped: Job was skipped as it succeeded in a previous run
    • ✅ test-fw-nrfconnect-ble_samples - Skipped: Job was skipped as it succeeded in a previous run
    • ✅ test-fw-nrfconnect-chip - Skipped: Job was skipped as it succeeded in a previous run
    • ✅ test-fw-nrfconnect-nrf-iot_thingy91 - Skipped: Job was skipped as it succeeded in a previous run
    • ✅ test-fw-nrfconnect-rs - Skipped: Job was skipped as it succeeded in a previous run
    • ✅ test-fw-nrfconnect-fem - Skipped: Job was skipped as it succeeded in a previous run
    • ✅ test-fw-nrfconnect-thread
    • ✅ test-fw-nrfconnect-zigbee - Skipped: Job was skipped as it succeeded in a previous run
    • ✅ test-sdk-find-my - Skipped: Job was skipped as it succeeded in a previous run
    • ✅ test-low-level
    • ✅ test-sdk-dfu
    • ⚠️ test_ble_nrf_config
Disabled integration tests
    • desktop52_verification
    • doc-internal
    • test-fw-nrfconnect-apps
    • test-fw-nrfconnect-ble_mesh
    • test-fw-nrfconnect-boot
    • test-fw-nrfconnect-nfc
    • test-fw-nrfconnect-nrf-iot_cloud
    • test-fw-nrfconnect-nrf-iot_libmodem-nrf
    • test-fw-nrfconnect-nrf-iot_mosh
    • test-fw-nrfconnect-nrf-iot_positioning
    • test-fw-nrfconnect-nrf-iot_samples
    • test-fw-nrfconnect-nrf-iot_serial_lte_modem
    • test-fw-nrfconnect-nrf-iot_zephyr_lwm2m
    • test-fw-nrfconnect-nrf_crypto
    • test-fw-nrfconnect-proprietary_esb
    • test-fw-nrfconnect-ps
    • test-fw-nrfconnect-rpc
    • test-fw-nrfconnect-tfm
    • test-sdk-mcuboot
    • test-sdk-pmic-samples
    • test-sdk-sidewalk
    • test-sdk-wifi
    • test-secdom-samples-public

Note: This message is automatically posted and updated by the CI

@ankuns ankuns force-pushed the nrf2220_temperature_compensation branch 3 times, most recently from 652369d to ac14f4b Compare March 17, 2025 10:40
@github-actions
Copy link

You can find the documentation preview for this PR here.

Preview links for modified nRF Connect SDK documents:

https://ncsdoc.z6.web.core.windows.net/PR-20960/nrf/app_dev/device_guides/fem/fem_nrf2220.html

@ankuns ankuns force-pushed the nrf2220_temperature_compensation branch 2 times, most recently from 396d748 to f9b90e9 Compare March 17, 2025 11:09
Copy link
Contributor

@grochu grochu left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good form the lib/fem_al perspective.

@ankuns ankuns force-pushed the nrf2220_temperature_compensation branch from f9b90e9 to ad8692e Compare March 19, 2025 11:21
This commit brings in zephyr with extended i2c_nrfx_twim to enable
nrf2220 temperature compensation.

Signed-off-by: Andrzej Kuros <[email protected]>
ankuns added 2 commits March 20, 2025 09:01
For the nRF2220 the temperature compensation feature is added.
It allows to achieve better output power accuracy among the whole
supported temperature range.

The feature is enabled by the MPSL_FEM_NRF2220_TEMPERATURE_COMPENSATION
Kconfig option. It relies on functions provided by MPSL in the
sdk-nrfxlib.
The temperature source can be taken from the SoC or can be set
by custom implementation.

Signed-off-by: Andrzej Kuros <[email protected]>
The nRF2220 temperature compensation is recently added.
The protocols relying on the fem_al do not use the MPSL scheduler.
In this case the function
`mpsl_fem_nrf2220_temperature_changed_update_now` must be called
by a protocol driver which for this case is the fem_al.

Signed-off-by: Andrzej Kuros <[email protected]>
@ankuns ankuns force-pushed the nrf2220_temperature_compensation branch from ad8692e to 7306a64 Compare March 20, 2025 08:01
@sonarqubecloud
Copy link

@NordicBuilder
Copy link
Contributor

This pull request has been marked as stale because it has been open (more than) 30 days with no activity. Remove the stale label or add a comment saying that you would like to have the label removed otherwise this pull request will automatically be closed in 7 days. Note, that you can always re-open a closed pull request at any time.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

changelog-entry-required Update changelog before merge. Remove label if entry is not needed or already added. DNM doc-required PR must not be merged without tech writer approval. manifest manifest-zephyr Stale

Projects

None yet

Development

Successfully merging this pull request may close these issues.

7 participants