For the 64 bit targets, change identifiers to the new hwmv2 ones.
And remove redundant overlays (which were equal for the 32
and 64 bit versions)
Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
For the 64 bit targets, change identifiers to the new hwmv2 ones.
And remove redundant overlays (which were equal for the 32
and 64 bit versions)
Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
This sample enables EVENTFD (through NET_SOCKETS_SERVICE)
which is not kconfig compatible with the old
NATIVE_APPLICATION targets (native_posix[//64])
Let's explicity filter out this platforms to avoid the
sample from failing to build
Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
due to MQTT now have ALPN support
the example code of using ALPN to connect MQTT
over port 443 need to be added
Signed-off-by: sukrit buddeewong <sukrit.omu@gmail.com>
Both VEVIF and BELLBOARD test cases are unidirectional from the core
executing the test (cpuapp). For VEVIF, cpuapp pings, and for BELLBOARD,
cpuapp pongs.
Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
The bonding info is not loaded after the Bluetooth
initialization again.
Call settings_load after the Bluetooth initialized.
Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
The broadcast audio sink now supports stereo if
CONFIG_TARGET_BROADCAST_CHANNEL=3 (LEFT | RIGHT).
It parses the BASE to find a set of BIS (1 or 2) that contain
the channel allocation from CONFIG_TARGET_BROADCAST_CHANNEL.
Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
Documentation for IPM MCUX sample did not provide correct command for
building sample. To resolve this, add the "--sysbuild" argument to build
command documentation
Signed-off-by: Daniel DeGrasse <daniel.degrasse@nxp.com>
In order to avoid defining almost the same overlays for different
sample codes and/or applications a common overlay file per
display interface is defined under the boards dts folder.
In doing so, an application/sample code will only have to
define another overlay explicitly under application's board
folder if more blocks are to be enabled. In either case, users
should explicitly invoke the requested overfiles at 'west build'
invokation by using the DTC_OVERLAY_FILE system variable.
Signed-off-by: Ioannis Karachalios <ioannis.karachalios.px@renesas.com>
Add a sample application to demonstrate some basic
C and shell interfaces for manipulating environment
variables.
Signed-off-by: Christopher Friedt <cfriedt@meta.com>
The sample assumed that the broadcast audio was always a single
frame per block. This commit improves the validation of the
codec configuration from the broadcast source, and properly
decodes the SDU using the configuration values.
Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
Update all usages of the MBOX API to the latest API changes (to be
squashed for bisectability).
Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
The heap size for i.MX RT1170 is way too much while for i.MX RT595, it
is too small to afford for 4-bytes formats, e.g. ARGB8888.
Signed-off-by: Phi Bang Nguyen <phibang.nguyen@nxp.com>
Added USE_SPECIFIC_BROADCAST_CHANNEL which enable/disables the use of a
specific channel audio location for the broadcast audio sink sample.
If USE_SPECIFIC_BROADCAST_CHANNEL is set to no then first valid channel
is chosen. In this case broadcast channel with no audio location is
also supported.
Signed-off-by: Jens Rehhoff Thomsen <jthm@demant.com>
The esp32s3_devkitm and the nrf5340dk_nrf5340 only have ws2812 in
each configurations that is procpu and cpuapp respectively.
Rename overlay and conf files to avoid building with unnecessary
configurations.
Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
ws2812-gpio's `in-gpios` property is not used as an input pin.
Renaming it to `gpios` to reflect the actual situation.
Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
Add overlay file to support the pro devkit. To build the sample
code, one should explicitly select the overlay file at
'west build' invokation via the DTC_OVERLAY_FILE system variable.
Signed-off-by: Ioannis Karachalios <ioannis.karachalios.px@renesas.com>
Add overlay file to support the pro devkit. To build the sample
code, one should explicitly select the overlay file at
'west build' invokation via the DTC_OVERLAY_FILE system variable.
Signed-off-by: Ioannis Karachalios <ioannis.karachalios.px@renesas.com>
Certain samples are supposed to demonstrate technology-specific
features, therefore their dependencies in sample.yml could be
narrowed to run verify build only on boards which support that
specific technology (like Ethernet or OpenThread).
Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
- Include cleanup
- s/NET/REMOTE (remote core may have nothing to do with NET)
- Improved error reporting
Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
The added configuration files allow the sample to be run
on the nRF52840 present on the nRF9160 DK with the nRF9160
(running SLM) being the modem and communication happening
through pins that are routed internally between the two.
Signed-off-by: Tomi Fontanilles <tomi.fontanilles@nordicsemi.no>
- A small delay is added after the post-restart L4_CONNECTED event
is received to prevent trying to send packets too quickly. Otherwise
the first packet would not get sent and the sample would hang on recv().
- Some logs and function parameters are fixed.
Signed-off-by: Tomi Fontanilles <tomi.fontanilles@nordicsemi.no>
Add the nucleo_c031c6 target to run the samples/drivers/watchdog
for iwdg and wwdg on the stm32c0 serie.
Signed-off-by: Francois Ramu <francois.ramu@st.com>
'not CONFIG_NATIVE_LIBC' filter is just to prevent building for
'native_posix' platform with additional options selected by
'sample.net.sockets.http_get.posix' testcase.
Signed-off-by: Marcin Niestroj <m.niestroj@emb.dev>
The nRF91 series devices, when running the Serial LTE Modem (SLM)
application starting with nRF Connect SDK 2.6.0, can now be used as
standalone modems via the generic modem_cellular driver.
A configuration to run the cellular_modem sample on the nRF9160 DK
(plugged in to another nRF91 series device running SLM) is provided.
Signed-off-by: Tomi Fontanilles <tomi.fontanilles@nordicsemi.no>
- It now uses the first PPP network interface instead
of the default network interface.
- Logs are added/improved.
- Potentially unused modem_chat matches are declared as such
to suppress compiler warnings.
Signed-off-by: Tomi Fontanilles <tomi.fontanilles@nordicsemi.no>
No need to loop through network interface addresses, just
listen DHCPv4 bound event and use that as a condition to continue.
Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
Since all CAN controllers drivers seem to support automatic recovery (for
any future drivers for hardware without this hardware capability this can
easily be implemented in the driver), change the Zephyr CAN controller API
policy to:
- Always enable automatic bus recovery upon driver initialization,
regardless of Kconfig options. Since CAN controllers are initialized in
"stopped" state, no unwanted bus-off recovery will be started at this
point.
- Invert and rename the Kconfig CONFIG_CAN_AUTO_BUS_OFF_RECOVERY, which is
enabled by default, to CONFIG_CAN_MANUAL_RECOVERY_MODE, which is disabled
by default. Enabling CONFIG_CAN_MANUAL_RECOVERY_MODE=y enables support
for the can_recover() API function and a new manual recovery mode (see
next bullet). Keeping this guarded by Kconfig allows keeping the flash
footprint down for applications not using manual bus-off recovery.
- Introduce a new CAN controller operational mode
CAN_MODE_MANUAL_RECOVERY. Support for this is only enabled if
CONFIG_CAN_MANUAL_RECOVERY_MODE=y. Having this as a mode allows
applications to inquire whether the CAN controller supports manual
recovery mode via the can_get_capabilities() API function and either fail
or rely on automatic recovery - and it allows CAN controller drivers not
supporting manual recovery mode to fail early in can_set_mode() during
application startup instead of failing when can_recover() is called at a
later point in time.
Signed-off-by: Henrik Brix Andersen <hebad@vestas.com>
This commit does several but minor changes to the USB handling of
the broadcast audio sink, such as improving logging, removing a few
unncessary pieces of code and some minor performance improvements.
It removes some uses of the ring buffers, which effectively clears
up around 30KB of RAM, while also reducing how much memory is being
copied, improving performance.
Some of this removes the existing code for partial support for
stereo, but that code did not work in the first place. Proper stereo
support will be added in a later commit.
Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
Move part of the Nanopb sample documentation to a serialization entry
and add information on how to configure proto files.
Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
Extend the nanopb sample with a Kconfig option to optionally include
a field in a protobuf message.
Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
The latest version of nanopb allows for using kconfig symbols in files
with an "options.in" extension.
Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
Extend the sample documentation for the central and peripheral
iso samples so that they become easier to get started with.
Signed-off-by: Rubin Gerritsen <rubin.gerritsen@nordicsemi.no>
Some SoCs in the nRF52 series do not support encrypting and decrypting
isochronous channels packets.
To make it easier to get started with the central_iso sample,
we want to turn of SMP by default. Without this config,
the sample still serves its purpose.
Encrypting the isochronous channel is as simple as
enabling BT_SMP.
Signed-off-by: Rubin Gerritsen <rubin.gerritsen@nordicsemi.no>
When the Bluetooth central samples in an open air environment
it is very likely that there are multiple devices nearby with
a received signal strength stronger than -70 dBm.
To avoid connecting to the wrong device, make the check stricter.
For tests using those samples, the NtNcable attenuation is changed
from the default 60 dBm to 40 dBm to satisfy the new requirement.
Signed-off-by: Rubin Gerritsen <rubin.gerritsen@nordicsemi.no>
Adds use of CHARGER_PROP_DISCHARGE_CURRENT_NOTIFICATION and
CHARGER_PROP_SYSTEM_VOLTAGE_NOTIFICATION_UV to the charger
sample application.
Signed-off-by: Ricardo Rivera-Matos <rriveram@opensource.cirrus.com>
Moves the charger API sample app from samples/charger/ to
samples/drivers/chargers/ as mentioned in issue #65032.
Signed-off-by: Ricardo Rivera-Matos <rriveram@opensource.cirrus.com>
Check for BASS and PACS, while scanning for
Broadcast Audio Sinks was wrong in the
Broadcast Audio Assistant sample.
Signed-off-by: Lars Knudsen <LAKD@demant.com>
40k heap size is not enough and results in handshake errors:
<err> net_sock_tls: TLS handshake error: -0x2700
Increasing it to 55k already works (when used with native_sim_64 and
offloaded sockets), but use 60k to get a bit more room for future.
Signed-off-by: Marcin Niestroj <m.niestroj@emb.dev>
Current SPIRAM sample code tries to search for any available
heap, causing this test to fail. Make sure the sample code
only malloc data from external ram.
Fixes#65997
Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
Remove mimxrt595_evk_cm33 from the MBOX sample. Although this SOC has
support for both cores, there is no support in tree for booting the
secondary core from the primary one, so this sample cannot run on
hardware.
Fixes#69092
Signed-off-by: Daniel DeGrasse <daniel.degrasse@nxp.com>
For this targets, the widgets demo run out of heap and crashes.
Let's just increase the heap size.
Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
Fix missing support for PAST in the broadcast audio sink
sample, where it previously failed to request PAST from
the broadcast assistant by not setting the PA state to
BT_BAP_PA_STATE_INFO_REQ.
Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
Increases some of the timeouts so that when using this sample
against other interactive devices (such as a phone or the
Zephyr audio shell), then it's easier to do it in time.
Also updates a few of the printks and ensures that we are not
doing name filtering when we have been requested to sync to
a specific broadcast source by a broadcast assistant.
The test for the sample has also been modified to have a longer
timeout to accomodate for the new semaphore timeout values.
Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
The log2 prefix was deprecated and changed to log some time ago,
but log2_generic() seems to have been inadvertantly left with
the old prefix.
Rename log2_generic() to log_generic() to follow suit.
Signed-off-by: Christopher Friedt <cfriedt@meta.com>
The Broadcast Assistant API should be fully independent of the scan
delegator. Therefore the new struct bt_bap_bass_subgroup has been
defined to avoid a dependency.
Fixes: #68338
Signed-off-by: Ping Wang <pinw@demant.com>
In error cases, where send_data() returns early, the allocated net_buf
is not free'd, causing a memory leak affecting the net_buf pool.
Fix this by freeing the allocated net_buf before returning early
from send_data().
Signed-off-by: Sean Farrelly <sean.farrelly@outlook.com>
The thrift methods loadCertificateFromBuffer(),
loadPrivateKeyFromBuffer(), and
loadTrustedCertificatesFromBuffer() expect a null-terminated
string.
Append '\0' to each array used to hold a certificate in
thrift samples and tests.
Signed-off-by: Christopher Friedt <cfriedt@meta.com>
Add missing service data for BASS for the broadcast audio sink
sample.
This also required the controller to increase its maximum data
length. Increased more than minimum required so that the name
can be changed without needing to increase this again.
Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
The bt_iso_chan_send function could take an optional
timestamp by using 0 as an indicator. The issue with
this approach was that a timestamp value of 0 is valid,
and could cause potential issue with syncing streams
in a group.
To fully support transmitting with and without timestamp,
bt_iso_chan_send_ts has been introduced, which is the only
function of the two (bt_iso_chan_send being the other) that
supports timestamps.
A new function, rather than adding a boolean to the existing,
was chosen as it simplifies the individual functions as well
as making it more explicit what the function does.
Since the bt_iso_chan_send function is used by LE audio, both
the BAP and CAP send functions have similarly been updated.
Likewise, all tests and samples have been updated to use the
updated function(s), and BT_ISO_TIMESTAMP_NONE has been
removed.
Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
UAC2 explicit feedback sample currently fails twister device testing
with timeout. It is not really clear what twister expects to see on the
serial output when running the sample. Because there is no meaningful
way of testing USB <-> I2S communication, mark the sample with TBD
harness to silence the timeout.
Signed-off-by: Tomasz Moń <tomasz.mon@nordicsemi.no>
The defines from the Bluetooth Audio assigned numbers are not
specific for LC3. This commit removes the LC3 infix and
the reference to LC3 in the documentation for them.
It also cleans up some of the documentation and
names of the enums.
Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
This update the echo_client configurations for the atsamr21_xpro board
to match same configs defined at echo_server.
Signed-off-by: Gerson Fernando Budke <nandojve@gmail.com>
In the Zephyr v3.5 to build the net samples pair echo-server/client the
SRAM requirements increased for the atsamr21_xpro board when passing
-DEXTRA_CONF_FILE=overlay-802154.conf argument. This adjusts example
features to free necessary SRAM to build and run the example.
Signed-off-by: Gerson Fernando Budke <nandojve@gmail.com>
This commit adds support for NXP board LPCXpresso55S69 for mbox.
- samples/drivers/mbox/ - mbox signaling mode
- samples/drivers/mbox_data/ - mbox data transfer mode
- tests/drivers/mbox/mbox_data/ - mbox test to verify functionality.
Signed-off-by: Tomas Galbicka <tomas.galbicka@nxp.com>
Define the reg and size property for the stm32 boards with qspi inside
Refer to the dts/bindings/flash_controller/st,stm32-ospi-nor.yaml.
Signed-off-by: Francois Ramu <francois.ramu@st.com>
Convert the network log backend to use socket API instead of
net_context API. This allows the backend to be used also
with socket offloading network drivers.
Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
Both advertiser and scanner demonstrate the use of extended advertising
and scanning, and how to gracefully restart the extended advertisements
through the use of recycle() callback. In the sample, the advertiser
initiates a connectable advertisement set, which prompts the scanner to
connect. After the connection is established, the advertiser waits for
5 seconds to disconnect. After the connection is dropped, the advertiser
immediately restarts broadcasting, while the scanner cools-down for
5 seconds to restart its process.
Signed-off-by: Luis Ubieda <luisf@croxel.com>
The sample illustrates how to calculate feedback value based on I2S
sample clock measurement or indirect I2S FRAMESTART and USBD SOF.
The sample is currently only supported on nrf5340dk_nrf5340_cpuapp
target because the feedback measurement uses target specific
peripherals.
While it should be possible to perform feedback value calculation
entirely in software (possibly with some additional filtering due
to software scheduling jitter), the I2S API does not provide necessary
timestamps.
Signed-off-by: Tomasz Moń <tomasz.mon@nordicsemi.no>
Introduce new USB Audio 2 implementation written from scratch. Main goal
behind new implementation was to perform entity configuration with
devicetree bindings, hiding the descriptor complexity from application.
Initial implementation is working at Full-Speed only. High-Speed support
will come later, but even at Full-Speed only this is viable replacement
for old stack USB Audio 1 class (USB Audio 1 is limited to Full-Speed by
specification, i.e. it is explicitly forbidden for USB Audio 1 device to
work at High-Speed).
Implemented is only absolute minimum set of features required for basic
implicit and explicit feedback samples. Only one sample frequency is
currently supported. Optional interrupt notifications are not supported.
Signed-off-by: Tomasz Moń <tomasz.mon@nordicsemi.no>
The normal and posix philosophers samples seemed to have
a number of redundant choices in prj.conf.
Let's reduce to the minimum required for the sample. The
CONFIG_DEBUG_THREAD_INFO option is part of the
documentation, so leave it as-is.
Signed-off-by: Christopher Friedt <cfriedt@meta.com>
The number of forks should match the number of philophers, and
that is encoded via NUM_PHIL.
Change the build assert to match.
Signed-off-by: Christopher Friedt <cfriedt@meta.com>
The tag 'introduction' was misspelled 'inroduction'.
Correct it both the samples/philosophers and the
samples/posix/philosophers directories.
Signed-off-by: Christopher Friedt <cfriedt@meta.com>
Previously, the POSIX shell utilities were intermixed with the
POSIX API implementation.
The POSIX shell utilities only depend on the public POSIX API,
so it makes sense to keep them in a separate subdirectory.
Signed-off-by: Christopher Friedt <cfriedt@meta.com>
Added USB Audio output for the Broadcast Sink sample. In addition
offloading of the LC3 codec was also made. The sample supports only
mono, and a KConfig option was added to configure which audio
location to sync to.
Signed-off-by: Fredrik Danebjer <frdn@demant.com>
bt_pbp_parse_announcement was defined as uint8_t return value function,
but returned errno values, so it was modified to return an int instead.
The return values are also now more granular and documented.
The function also triggered a coverity issue with the way that it
parsed the data->data, as it would be marked as tainted. This should
be fixed by using the net_buf_simple API, which also improves on
some other parts of the code.
Finally the meta argument for the function was changed from an
unknown sized buffer, where the caller somehow had to know the
size of the metadata before calling the parsing function, to
an output pointer. This also omits the requirement for the
caller to always copy the metadata, where now it just
gets a pointer to the metadata in the bt_data struct. The application
can now always decide whether to continue to parse the metadata or
to copy it, using the pointer and the return value of the function.
Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
The x-nucleo-iks01a3 shield is equipped with a DIL24 socket where
different compatible sensors may fit. This commit add support to
lis2de12 on DIL24 in such a way that, if sensor is not present, test
would just skip it and proceed. Other sensors may be added in future.
Signed-off-by: Armando Visconti <armando.visconti@st.com>
Adds CAN drivers for XMC4xxx SoCs.
XMC4xxx has multiple CAN nodes. The nodes share a common clock and
a message object pool.
The CAN nodes do not have a loopback mode. Instead there is an
internal bus which can be used to exchange messages between
nodes on the SoC. For this reason tests/samples which rely on the
loopback feature have been disabled.
Signed-off-by: Andriy Gelman <andriy.gelman@gmail.com>
Add a test case for stm32h747i_disco that comes with a display shield.
This will make it easier to catch LVGL regressions on this board.
Signed-off-by: Abderrahmane Jarmouni <abderrahmane.jarmouni-ext@st.com>
Add a test case for stm32h747i_disco that comes with a display shield.
This will make it easier to catch LVGL regressions on this board.
Signed-off-by: Abderrahmane Jarmouni <abderrahmane.jarmouni-ext@st.com>
Add a test case for boards that have a supported built-in display that is
enabled by default in DTS. This will make it easier to catch display
regressions on these boards in CI.
Signed-off-by: Abderrahmane Jarmouni <abderrahmane.jarmouni-ext@st.com>
rpmsg_service only loads the main application on the target. Switch to
sysbuild which is know to work as expected with the openamp sample.
Signed-off-by: Wilfried Chauveau <wilfried.chauveau@arm.com>
Change the samples and shell to use sinf instead of sin,
as that return the expect float data type, instead of
a double.
Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
Add simple I2S output sample. This sample is verified with the RT1060
EVKB, but can be ported to any board with I2S support. It simply
demonstrates how to write I2S output data using the I2S API. The output
can be verified using a signal analyzer, if the user desires.
Signed-off-by: Daniel DeGrasse <daniel.degrasse@nxp.com>
This sample takes a POSIX-y spin on the existing
Dining Philosophers sample application. The objects
used in the POSIX version are pthread_mutex_t, and
the threads are pthread_t.
Signed-off-by: Christopher Friedt <cfriedt@meta.com>
This sample can be used as a "virtual wire", allowing direct access to
devices connected to the target processor - for example: GPS, Cellular,
etc...
This is also useful as a utility - no other connectivity options exist
for UART, where other interfaces like SPI and I2C have shell commands.
Signed-off-by: Attie Grande <attie.grande@argentum-systems.co.uk>
Clarify some documentation regarding DTLS settings.
Set default QUEUE uptime to 30s, which would be same as
most cellular networks use, and nRF SDK use.
Signed-off-by: Seppo Takalo <seppo.takalo@nordicsemi.no>
Relocate network stack to RAM for iMX RT boards when running the zperf
sample. Relocating the network stack to ITCM greatly improves
performance on these platforms.
Also, remove overlays for the RT1050 and RT1060 setting the system timer
to systick. This is no longer required as this is the default timer for
these boards.
Signed-off-by: Daniel DeGrasse <daniel.degrasse@nxp.com>
Enable relocation of key networking stack functions to RAM when running
the zperf example. This will enable better performance on platforms with
fast code RAM.
Signed-off-by: Daniel DeGrasse <daniel.degrasse@nxp.com>
Provide three basic examples to test the x-nucleo-iks4a1 shield:
- Test shield in standard mode
Acquire sensor data from shield with all MEMS sensors connected
to micro-controller
- Test shield in HUB1 mode
Acquire sensor data from shield with lis2mdl and lps22df
connected to LSM6DSV16X sensor hub
- Test shield in HUB2 mode
Acquire sensor data from shield with lis2mdl and lps22df
connected to LSm6DSO16IS sensor hub
Signed-off-by: Armando Visconti <armando.visconti@st.com>
Update the Thrift sample to include instructions on
fetching optional modules. Without this, user builds
will fail.
Signed-off-by: Christopher Friedt <cfriedt@meta.com>
This patch reworks the YAML files for the llext samples and tests to
share a common restriction list. Also, using an arch-specific config
to disable the MPU for the ARM architecture only, there is no need
to duplicate the test cases per architecture.
Use this to enable the "writable" test case for the ARM architecture
and separate the "modules_enabled" case to test building as a module.
Signed-off-by: Luca Burelli <l.burelli@arduino.cc>
Initializers must be compile time constants (not expressions!) for clang
to be happy. Clang rightfully pointed out that the callback_list member
of sensing_connection was being initialized using an expression that was
not compile-time constant.
The macros passed along a pointer created by taking the address of a
global constant and then at initialization time attempting to
dereference it using the * operator. So in the end the compiler has
identifier its trying to first take the address of and then later
dereference in an initializer. Clang didn't appreciate this, though gcc
seemed to be just fine.
Actually clang 17 might work just fine with this as well, but clang 16
(the clang I tried) didn't like it at all.
Instead store the pointer to the callback list rather than copying the
struct. This could be done the other way and not passing a
pointer through the macros perhaps.
Signed-off-by: Tom Burdick <thomas.burdick@intel.com>
Many sensors have multiple functions, for example, icm42688 supports
accel, gyro and temperature, and the sensor streaming api always mixes
the multiple functions in one function call. So we need add a layer in
sensing subsystem to dispatch the result returned from sensor streaming
api for each function.
I changed the sensor-type(int) to sensor-types(array) in sensing sensor
device bindings, so that one device can map to multiple instances of
sensing sensor.
Signed-off-by: Zhang Lixu <lixu.zhang@intel.com>
The POSIX API in Zephyr is considered more of a library than a
Subsystem.
Adjust the samples doc to reflect that.
Signed-off-by: Christopher Friedt <cfriedt@meta.com>
POSIX API Samples live in another directory, but they should
still be easy to find from Portability Samples.
Signed-off-by: Christopher Friedt <cfriedt@meta.com>
When using softdevice controller on iso_broadcast sample, the BIG
created uses more than 1 subevent. This means that when you try to
use the iso_receive sample to sync it does not work.
So update the sample to use mse=0 and allow any number of subevents,
making the sample more flexible and work with SDC without any changes.
Signed-off-by: Sean Madigan <sean.madigan@nordicsemi.no>
Decrease total RAM usage when Wi-Fi is enabled, specially after
`config HEAP_MEM_POOL_ADD_SIZE_BOARD` was added. This allows application
to handle additional HEAP as required.
Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
A growing number of CAN controllers do not have support for individual RX
hardware filters based on the Remote Transmission Request (RTR) bit. This
leads to various work-arounds on the driver level mixing hardware and
software filtering.
As the use of RTR frames is discouraged by CAN in Automation (CiA) - and
not even supported by newer standards, e.g. CAN FD - this often leads to
unnecessary overhead, added complexity, and worst-case to non-portable
behavior between various CAN controller drivers.
Instead, move to a simpler approach where the ability to accept/reject RTR
frames is globally configured via Kconfig. By default, all incoming RTR
frames are rejected at the driver level, a setting which can be supported
in hardware by most in-tree CAN controllers drivers.
Legacy applications or protocol implementations, where RTR reception is
required, can now select CONFIG_CAN_ACCEPT_RTR to accept incoming RTR
frames matching added CAN filters. These applications or protocols will
need to distinguish between RTR and data frames in their respective CAN RX
frame handling routines.
Signed-off-by: Henrik Brix Andersen <hebad@vestas.com>
Added README.rst for eventfd and uname samples. Updated README for
gettimeofday to align with other READMEs.Updated Makefile.host
file for samples to store output file in 'build' directory.
Signed-off-by: Doug Foster <dougwfost@gmail.com>
sensor cannot be null because it is initialized with DEVICE_DT_GET_ONE,
which always resolves to a device. The deleted check triggered a
compiler warning ("warning: the address of '__device_dts_ord_23' will
never be NULL").
Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
Using the recently added WS2812 PIO driver, this enables the LED on the
QT PY to work with the built in RGB LED examples.
Signed-off-by: Ian Wakely <raveious.irw@gmail.com>
Previously the sample was using some headers that aren't
available to the host, now we can add a `Makefile.host` to
compile the example on a POSIX OS like Linux:
```
# Go to the sample dir
cd ${ZEPHYR_BASE}/samples/posix/uname
# Compile the sample
make -f Makefile.host
# Run the binary
./build/uname
sysname[65]: Linux
nodename[65]: LAPTOP-YC
release[65]: 5.10.16.3-microsoft-standard-WSL2
version[65]: #1 SMP Fri Apr 2 22:23:49 UTC 2021
machine[65]: x86_64
```
Signed-off-by: Yong Cong Sin <ycsin@meta.com>
Relocate the `uname` shell implementation from uname sample, so
that it can be reused by other application and the uname sample
only uses POSIX APIs.
Signed-off-by: Yong Cong Sin <ycsin@meta.com>
Provide properties for selected TF-M toolchain so that the NS
application will use the same toolchain as TF-M.
Signed-off-by: Joakim Andersson <joakim.andersson@nordicsemi.no>
Signed-off-by: Markus Swarowsky <markus.swarowsky@nordicsemi.no>
The sample now builds the psa-arch-tests itself and doesn't rely anymore
on the TF-M module CMakeFile.
Additionally it will not run the zephyr main.c anymore but therefore only
uses the tf-m non-secure application.
Signed-off-by: Markus Swarowsky <markus.swarowsky@nordicsemi.no>
Update the TF-M regression tests sample to build the NS app
in the tf-m-tests repository as an external project.
The regression tests need to provide test configurations to both
TF-M an NS app.
Duplicate configuration done in the spe/CMakeLists.txt to configure
TF-M image for the regression tests.
Signed-off-by: Joakim Andersson <joakim.andersson@nordicsemi.no>
Signed-off-by: Markus Swarowsky <markus.swarowsky@nordicsemi.no>
TF-M no longer builds the NS app, but exports build files to api_ns
folder and expects the user to build the rest themselves.
Remove the option to build the NS app, and update the TFM_USE_NS_APP
to look for an output hex file in the tfm_ns folder.
Signed-off-by: Joakim Andersson <joakim.andersson@nordicsemi.no>
Signed-off-by: Markus Swarowsky <markus.swarowsky@nordicsemi.no>
Update install path of tfm_ioctl_api.h, remove include of tfm_api.h
Signed-off-by: Joakim Andersson <joakim.andersson@nordicsemi.no>
Signed-off-by: Markus Swarowsky <markus.swarowsky@nordicsemi.no>
The place where TF-M places its non-secure api header files has changed
Therefore changing it for for all applications that use it.
Signed-off-by: Markus Swarowsky <markus.swarowsky@nordicsemi.no>
The LPS22HB is a pressure and temperature sensor, but
this sample document is wrongly mentioning "humidity".
Fix#66117
Signed-off-by: Armando Visconti <armando.visconti@st.com>
Enable L/R channel pair for DMIC0 on the RT595 EVK. The RT595 EVK has a
pair of MEMS microphones wired to PDM channel 0 and 1, so these channels
are configured with appropriate gain and filter settings for the MEMS
microphones.
Signed-off-by: Daniel DeGrasse <daniel.degrasse@nxp.com>
Co-authored-by: Yves Vandervennet <yves.vandervennet@nxp.com>
This commit adds mbox sample support for these NXP boards:
- MIMXRT1160-EVK
- MIMXRT1170-EVK
- MIMXRT1170-EVKB
Signed-off-by: Tomas Galbicka <tomas.galbicka@nxp.com>
Add overlay to the blinky pwm sample to run the application on the
Wio Terminal. The USER LED on PA15 is used to setup the PWM LED.
Signed-off-by: Joel Guittet <joelguittet@gmail.com>
Enabling commands for the sample. They were disabled by c0c8952739 but
should be enabled in the sample.
Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
Extend sample with configuration which has shell on one UART and
UART dictionary based frontend on another. Shell commands can be used
to control runtime filtering of logging messages for the frontend and
shell backend.
Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
Change bin name to esp32_appcpu_firmware instead of
esp32_net_firmware to keep naming coherence.
Signed-off-by: Lucas Tamborrino <lucas.tamborrino@espressif.com>
SOC_ESP32_NET is now SOC_ESP32_APPCPU, following espressif's
naming convention in the same manner as ESP32S3 app cpu.
SOC_ESP32_APPCU is now a subset of SOC_SERIES_ESP32.
This commit also changes the necessary files, samples and tests
for bisect purposes.
Signed-off-by: Lucas Tamborrino <lucas.tamborrino@espressif.com>
With extremely small displays (much smaller than 64x24), the
calculation of the blocks in the four corners fails. These
might then be too large and no longer fit into the available
area of the small displays.
Signed-off-by: Stephan Linz <linz@li-pro.net>
In exceptional cases, monochrome displays can deviate from the
general interpretation (PIXEL_FORMAT_MONO01) of a logical 1 as
pixel on (white) and 0 as pixel off (black) and instead set the
capability to PIXEL_FORMAT_MONO10. This small but significant
difference has been ignored so far, resulting in an inverse
display for those displays. In order to be technically correct
here, the buffers for a "white" background should be set to 0
instead of 1 and for "black" to 1 instead of 0.
Signed-off-by: Stephan Linz <linz@li-pro.net>
Rounding errors due to the division of non-integrally divisible
buffer sizes lead to the loss of one byte. This can be avoided
with the DIV_ROUND_UP() macro.
Signed-off-by: Stephan Linz <linz@li-pro.net>
Add a basic connection test between two devices,
in which the controllers are in separate nrf52_bsim devices
connected over UART to the devices running the host+app.
The controllers are running the HCI UART async sample.
Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
This is a follow-up to commit c7e4d23c5d.
After all calls to `nrfx_dppi_*` and `nrfx_ppi_*` functions were
replaced with corresponding `nrfx_gppi_*` calls, it is no longer
needed to include the `nrfx_dppi.h` and `nrfx_ppi.h` headers.
Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
The sample needs to check in Kconfig whether PPI or DPPI is present
on the target platform in order to enable the proper allocator in nrfx.
It should not use the `HAS_HW_NRF_*` symbols for this as those take
into account also the status of the corresponding DT node, not only
its presence.
Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
This sample makes calls to the nrfx_gpiote driver functions that
require absolute pin numbers, not relative to a given GPIO port,
so instead of getting the numbers with the `DT_GPIO_PIN` macro,
it should use `NRF_DT_GPIOS_TO_PSEL`.
Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
Convert the sample for the lmp90100_evb shield to use devicetree for
configuring the ADC channel.
Signed-off-by: Henrik Brix Andersen <hebad@vestas.com>
If accept() returns an error, it typically means that the
system is running out of resources. In this case sleep
some time in order the system to cool down a bit.
Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
If accept() returns an error, it typically means that the
system is running out of resources. In this case sleep
some time in order the system to cool down a bit.
Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
PBP API allows sources to create a Public Broadcast Announcement.
PBP API to parse a Public Broadcast Announcement.
public_broadcast_source application starts extended advertising and
includes a Public Broadcast Announcement. The advertised broadcast
audio stream quality will cycle between high and standard quality.
public_broadcast_sink application scans for broadcast sources and
synchronizes to the first found source which defines a Public Broadcast
Announcement including a High Quality Public Broadcast Audio Stream
configuration.
Add bsim tests for Public Broadcast Profile APIs.
Add shell implementation for Public Broadcast Profile APIs.
Signed-off-by: Daniela Andreea Dumitrache <danielaandreea.dumitrache@nxp.com>
Physical boards work on these tests but some of the required
peripherals are not simulated by `renode`, executing the tests
with renode-simulated board in CI will fail.
Exclude `renode` simulation from these tests.
Signed-off-by: Yong Cong Sin <ycsin@meta.com>
Updated API version enables multi-instance GPIOTE driver.
Additionally obsolete symbol that was used to specify
API version in the past was removed.
Affected drivers have been adjusted and appropriate changes
in affected files have been made.
Signed-off-by: Jakub Zymelka <jakub.zymelka@nordicsemi.no>
The incorrect semaphore was used for the ipc1 instance to synchronise
the data receiving.
This commit fixes it.
Signed-off-by: Marcin Jelinski <marcin.jelinski@nordicsemi.no>
Adjust the sample to work with the priority boost. It illustrates zbus
being used inside an ISR instead of into the main function.
Signed-off-by: Rodrigo Peixoto <rodrigopex@gmail.com>
This change follow the recent commit that update openamp rsc table logs.
Add the logs for both samples sample client & TTY responder,
as well as for both sides Linux & Zephyr.
Remove the serial connection to Zephyr because it is board specific.
Signed-off-by: Marc-Antoine Riou <marc-antoine.riou@iot.bzh>
Add logs in both of the openamp rsc table loops to stick with
what is shown in Zephyr documentation. Prefix each message with the loop
name and unify logs with those from rpmsg_client_sample module.
Signed-off-by: Marc-Antoine Riou <marc-antoine.riou@iot.bzh>
Sample openamp_rsc_table was sending too many characters to master.
It was displayed as unrecognised character when reading message on master.
Signed-off-by: Marc-Antoine Riou <marc-antoine.riou@iot.bzh>
The sample did not correctly select the WinUSB
driver for the WebUSB interface as required
on Windows when CDC ACM was included in the
build configuration (the case for e.g. nRF52840
Dongle).
Introduce correct function subset header in the
MS OS 2.0 descriptor.
Signed-off-by: Lars Knudsen <larsgk@gmail.com>
Allow engine to give hints about ongoing CoAP transmissions.
This information can be used to control various power saving
modes for network interfaces. For example cellular networks might
support release assist indicator.
Signed-off-by: Seppo Takalo <seppo.takalo@nordicsemi.no>
Add DT overlay to be able to support and test UDC DWC2 driver
(snps,dwc2) on nucleo_f413zh board. This disables STM32 shim
driver described and configured on the SoC and board level.
Obviously,it should work with other STM32F4 boards as well and we
could have a mechanism to apply it generically using snippets.
Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
Update coap_service_send and coap_resource_send to take an optional
pointer argument to the newly introduced coap_transmission_parameters.
Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
This is just as arbitrary as what was before, but simpler.
Before this change, the callback were invoked upon receiving the num
complete packets event.
This did not necessarily work with all spec-compliant controllers.
Now the callback is invoked as soon as the lower layer destroys the
buffer. ATT shouldn't care whether L2CAP sends it over RFC1149 or
something else after that point.
Signed-off-by: Jonathan Rico <jonathan.rico@nordicsemi.no>
Co-authored-by: Aleksander Wasaznik <aleksander.wasaznik@nordicsemi.no>
Why?
- metadata is easier to manage as an array + index
- less error-prone -> less memory-management bugs
- we can. because of the previous refactor
- PDU allocations are more predictable
- ATT buffer size can be optimized by app
- isolates ATT from the rest of the ACL users
- decouples ATT PDU size from e.g. SMP w/ LESC
Drawbacks:
- higher memory usage
- kconfig change
The higher memory use is only temporary, as this will be followed-up
with more refactors that should bring it back down.
Signed-off-by: Jonathan Rico <jonathan.rico@nordicsemi.no>
Co-authored-by: Aleksander Wasaznik <aleksander.wasaznik@nordicsemi.no>
Add README.rst file with description of sample which shows how to use
pytest and Twister together.
Signed-off-by: Piotr Golyzniak <piotr.golyzniak@nordicsemi.no>
Use the common USBD sample initialization helper where new USB device
support has already been added.
Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
There is common code for the new USB device support in the samples to
instantiate USB device, descriptors, configuration and initialize USB
device. Add common code that can be used for the simple usecase with a
single USB device and single configuration.
Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
Renames "prov device" references and options to
"provisionee" to align implementation with Mesh
Protocol specification v1.1, section 5.4.
Signed-off-by: Anders Storrø <anders.storro@nordicsemi.no>
Adds a charge_enable handler to facilitate enabling and disabling
a charge cycle. This deprecates enabling and disable the charge
cycle via the CHARGER_PROP_STATUS property.
Signed-off-by: Ricardo Rivera-Matos <ricardo.rivera-matos@cirrus.com>
Updaye buffer counts and semaphore initial value so that the
Broadcast Audio Source can utilize any use of broadcast
pre-transmissions.
Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
The issue with non secure storage system has been fixed
in nrf53_ns platform: https://github.com/zephyrproject-rtos/zephyr/issues/59376
No need workarounds anymore.
Signed-off-by: Aleksandr Khromykh <aleksandr.khromykh@nordicsemi.no>
The benchmark sample did not contemplate message subscribers. It adds
the msg subscribers and improves the organization of the project.
Signed-off-by: Rodrigo Peixoto <rodrigopex@gmail.com>
The subsys/logging/logger example can be used to demonstrate how to
use SWO for logging. Add a configuration fragment that enables the
logger's SWO backend. The default SWO frequency in this example is set
to 2 MHz to ensure a well-defined output bit rate instead of the
highest possible.
Signed-off-by: Andreas Sandberg <andreas@sandberg.uk>
Set the prescaler for the stm32_lp_tick_source lptim node.
When the LPTIM is clocked by the LSE with a prescaler
of 16 (lptim freq at 2048Hz) expecting 2048 for the TICKS_PER_SEC.
When the LPTIM is clocked by the LSE with a prescaler
of 32 (lptim freq at 1024Hz) expecting 1024 for the TICKS_PER_SEC.
Signed-off-by: Francois Ramu <francois.ramu@st.com>
Make sure that the flash partition is valid.
With TF-M enabled the storage_partition can be used as memory that is
known to be configured as non-secure flash region.
The slot1_ns_partition partition is only correct when TF-M is built
with BL2 enabled.
Signed-off-by: Joakim Andersson <joakim.andersson@nordicsemi.no>
Print a finished message, so that it is clear that this in the end
of the sample. This makes it certain that we didn't crash without
output on the last test.
Signed-off-by: Joakim Andersson <joakim.andersson@nordicsemi.no>
Stop erasing outside of the test partition.
We shouldn't really on this being accesible memory.
This region may be consider as secure when application is non-secure.
Signed-off-by: Joakim Andersson <joakim.andersson@nordicsemi.no>
The is_substring did not work for true substrings, as it
would always compare [0] to [0], so it would return false
for the substring "BC" being in "ABC".
Removed the tolower as it is not necessary and fixes the issue.
Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
Commit adds implementation of the specification
recommendations regarding randomization of
responses on the access layer.
3.7.3.1 Transmitting an Access messages
Signed-off-by: Aleksandr Khromykh <aleksandr.khromykh@nordicsemi.no>
The patch updates README with detailed description of the requirements
regarding target devicetree needed to correctly build the sample.
Signed-off-by: Adam Wojasinski <adam.wojasinski@nordicsemi.no>
When commit 5b4f4253c1 introduced
"nordic,qspi-nor" dts binding the sample wasn't aligned to the change.
From that moment the sample started to be filtered out by the Twister.
The patch adds Nordic's compatible to the test filter.
Signed-off-by: Adam Wojasinski <adam.wojasinski@nordicsemi.no>
Enable INPUT_SHELL and INPUT_KBD_MATRIX_STATE by default if the sample
is compiled with CONFIG_SHELL=y. This makes it easier to use the shell
commands in the sample by just enabling the shell and let any help
command turn on automatically.
Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
Update the readme to better describe contents of the sample, which is now
used to showcase the various input device types that LVGL offers.
Signed-off-by: Fabian Blatz <fabianblatz@gmail.com>
The conf and overlay files to properly compile the wifi samples were
omitted for the Xiao_esp32c3 board. I've added those two files and
confirmed that the sample properly compiles and runs.
Signed-off-by: Robert Baruch <robertbaruch@mac.com>
Add const prefix for service uuid and char uuid.
Since Service UUID and Char UUID should not change in the service
definition, they are most reasonably defined as rodata, also for
save some ram footprint.
The field `attr->user_data` type is `void *`, as this PR change
all Service UUID to rodata, so there must add (void *) to avoid warning.
Signed-off-by: Lingao Meng <menglingao@xiaomi.com>
In preparation of migrating to net_mgmt events, we need to remove
the observer event callback handler.
Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
The espi_saf.h header has a dependency on the eSPI driver supporing SAF.
Guard the include to fix builds of the Nuvoton eval boards.
Signed-off-by: Keith Short <keithshort@google.com>
Enforcing the peer's behavior is not strictly necessary. All the host
should do is make sure it is resilient to a spec-violating peer.
Moreover, a growing number of platforms were disabling the check, as the
spec allows "batching" HCI num complete packets events, stalling ATT RX.
Signed-off-by: Jonathan Rico <jonathan.rico@nordicsemi.no>
Co-authored-by: Aleksander Wasaznik <aleksander.wasaznik@nordicsemi.no>
This removes the fixed size bt_bap_base, which provides
2 improvements:
1) The RAM usage of the broadcast sink has been reduced.
For the Broadcast Sink sample it is a reduction of 120
octets, but with much better scaling for supporting
more or larger BASEs.
2) The functions to parse BASEs now support arbitrary sized
BASEs, where they were previously restricted by our
local Kconfig options. This allow us to parse any BASE
from a remote device, without encounting memory issues.
We are still memory restricted on the devices we
actually want to sync to.
Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
Removes support for the deprecated features of having a prj file
which has the board name on the end of it. Board Kconfig fragments
should be used instead.
Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
Adds a zephyr,lvgl-keypad-input compatible to the native_posix board
overlay and the required code to control an button matrix widget.
Signed-off-by: Fabian Blatz <fabianblatz@gmail.com>