The gsm modem driver is deprecated and will be removed. Remove
the build overlay and dependency on the gsm modem from the
tagoio sample.
The new cellular modem driver and subsystem use the native
networking stack and the pm subsystem, so just like ethernet,
enabling the cellular modem is up to the board configuration.
Signed-off-by: Bjarki Arge Andreasen <bjarki@arge-andreasen.me>
The gsm_modem driver is deprecated, and will be removed. Remove
the gsm modem sample which depends on the deprecated driver.
Signed-off-by: Bjarki Arge Andreasen <bjarki@arge-andreasen.me>
In order to be compatible with Linux AF_PACKET socket calls, the
protocol field needs to be in network byte order.
So for example, if user wants to receive all packets, then the
protocol field needs to be set as "htons(ETH_P_ALL)".
See Linux manual page at
https://www.man7.org/linux/man-pages/man7/packet.7.html
for details.
Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
Socket service library uses eventfd, which does not work with
native_posix platform, hence need to exclude it from samples that now
rely on socket services.
Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
CONFIG_POSIX_API depends on !CONFIG_NATIVE_APPLICATION, which is
incompatible with the native_posix platforms.
Signed-off-by: Tomi Fontanilles <tomi.fontanilles@nordicsemi.no>
Remove the `_MAC` part because those Kconfig options enable only hash
algorithms, nothing MAC-related, and the `_ENABLED` part to align the
naming to the Mbed TLS defines (plus we don't need such a part).
As a bonus, enabling SHA-256 does not automatically enable SHA-224
anymore.
See the migration guide entries for more details on the practical
changes.
Signed-off-by: Tomi Fontanilles <tomi.fontanilles@nordicsemi.no>
This sample demonstrates the implementation of an (industrial) IoT
sensor/actuator device. The application uses the MQTT protocol to
securely send sensor data to a remote MQTT broker, while responding
to commands received over the MQTT connection.
Signed-off-by: Jason Murphy <jason.murphy@analog.com>
As native_posix is no longer supported, due to incompatibility with
CONFIG_POSIX_API, remove a dedicated config for it.
A config for qemu_cortex_m3 needed to enable RNG, as otherwise it's not
available for the platform and gives build error.
Finally, enable qemu_cortex_m3 build in the CI.
Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
select modem backend statistics and enable shell in cellular
modem sample. This will help advertise the feature, and can
help quickly identify issues with to small buffers.
Signed-off-by: Bjarki Arge Andreasen <bjarki@arge-andreasen.me>
Because of changes in other network header files, the net_if.h
was not included so add it directly to the echo-client and
mqtt_azure sources.
Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
Instead of using net_context API directly, the LLMNR responder is
changed to use the socket service API. This allows DNS access
for offloaded sockets and can lower overall memory consumption.
Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
Improve navigability in the documentation by adding a link to the main
HTTP Server documentation page to the HTTP Server sample.
Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
This sample assumes that two separate sockets can be bound on IPv4 and
IPv6. On Linux (via Native Simulator Offloaded Sockets) this is possible
when there is no IPv4 to IPv6 mapping. Same can be true to other offloaded
sockets.
CONFIG_NET_IPV4_MAPPING_TO_IPV6 is disabled for this sample, so IPv4 to
IPv6 mapping is disabled for Zephyr native IPv6 layer. For offloaded
sockets this option does not define whether mapping is enabled or not, so
try to unconditionally (and without error checking) disable it.
This patch fixes compatibility with NSOS, since two separate sockets can be
bound on the same address and port, one for IPv4 and second for IPv6.
Signed-off-by: Marcin Niestroj <m.niestroj@emb.dev>
When Block-Wise transfer restarts, the post-write callback should
receive some indication that the block is actually a beginning of new,
instead of part of previous transfer.
Fixes#71351
Signed-off-by: Seppo Takalo <seppo.takalo@nordicsemi.no>
Add documentation page for HTTP server functionality.
Rename existing HTTP documentation to HTTP client, as it only covers the
client library.
Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
Currently wifi sample code contains a pair of .conf and .overlay
for every single esp32-based board. Files are usually identical.
This PR remove all esp32* board files and use common socs instead.
Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
Do not print progress report so that makes debugging things
a lot harder. It is still possible to enable printouts if needed
by setting PRINT_PROGRESS symbol.
Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
If the IPv6 address that our socket is bound to deprecates, then
re-create the socket so that we avoid using deprecated IPv6 address.
Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
Fix the failures introduced in #72078 by manually enabling all the
hash algorithms as they used to be.
Signed-off-by: Tomi Fontanilles <tomi.fontanilles@nordicsemi.no>
A scheduler fix for free memory usage on aborted threads is now using
a per-CPU dummy thread instead of a single stack-based one at startup.
These static thread objects need spots in the kobj bitmasks, and a few
tests are sitting right at the default limit (16 threads).
Signed-off-by: Andy Ross <andyross@google.com>
A simple HTTP server sample application.
Signed-off-by: Emna Rekik <emna.rekik007@gmail.com>
Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
There are several esp32-based boards that its conf and overlay
files are missing proper renaming to match cpu cluster.
This also removes all _SOC_ name from files.
Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
Updates the linker script fragments under 'samples' to use
Z_LINK_ITERABLE_SUBALIGN for the subalignment instead of
a hardcoded value of 4.
Signed-off-by: Peter Mitsis <peter.mitsis@intel.com>
The last parameter to getsockopt() should be a socklen_t *
not an int *.
Let's fix it to avoid a build warning which breaks this tests
in CI.
Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
Convert all of the NXP SOCs with ENET to use the new
binding scheme, which is used by the new driver.
Convert any boards using this SOC to the new scheme as well,
and remove from the documentation the bit about the experimental
nature of the new driver and the overlay that shall no longer exist.
Some of the boards I do not have the hardware of, so apologies
if something breaks, as I have no way to know. All the boards
were made sure to at least build.
Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
Deprecate ETH_MCUX, by:
- Marking it as DEPRECATED in Kconfig, obviously.
- Unmarking the new driver as experimental.
- Putting the new and old drivers in the same folder.
- Reworking the menu appearance of the driver selection.
Note that technically now it is possible to choose the wrong
driver than what is enabled in DT, this is intentional, but
the correct one will obviously be enabled by default.
- Convert all sample overlays to the new Kconfigs. This was
part of the motivation for the shared overlays, as it was
causing twister/CI logs to look ugly and misleading due
to Kconfig warnings.
Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
Because CONFIG_POSIX_API (required) cannot be selected on that platform,
resulting in build failures.
Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
The native_posix compilations fail with various socket
errors like this:
samples/net/sockets/can/src/main.c:65:9: error: implicit \
declaration of function ‘send’ [-Werror=implicit-function-declaration]
65 | ret = send(fd, &sframe, sizeof(sframe), 0);
| ^~~~
So disable the native_posix board from networking samples as
native_posix board is not compatible with CONFIG_POSIX_API
This is related to commit b8fc1c4c3e ("samples: net: Disable
native_posix target in samples") but disables more network samples
for native_posix board.
Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
- TCP should not be disbled by default for subg in this particular
sample since it is mostly used to test network rather than
performance.
Signed-off-by: Ayush Singh <ayushdevel1325@gmail.com>
- TCP should not be disbled by default for subg in this particular
sample since it is mostly used to test network rather than
performance.
Signed-off-by: Ayush Singh <ayushdevel1325@gmail.com>
Remove IPSP support from the tree.
It has no maintainers, and is regularly broken. The fact that it's
nontrivial to set-up in linux makes it hard to fix reported issues.
Signed-off-by: Jonathan Rico <jonathan.rico@nordicsemi.no>
Adjustments of overlay and conf files to adjust for the MERGE removal.
The revert of MERGE requires specific overlay and conf files for boards
which relied on the MERGE feature.
Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
For demonstration purposes add a way to capture some arbitrary
data and send it in cooked mode for analysis.
Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
If there are multiple tunnels, then use the tunnel device name
to select the correct one. Note that this tunnel is only used
for network packet capture in this sample application.
Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
The CONFIG_MAX_THREAD_BYTES=3 needs to be set for multiple
boards like mr_canhubk3 and xiao_ble when running in usermode.
Too many thread objects (18)
Increase CONFIG_MAX_THREAD_BYTES to 3
Fixes#70955
Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
The native_posix compilations fail with various socket
errors like this:
samples/net/sockets/echo_server/src/udp.c:45:26: error: implicit \
declaration of function ‘socket’ [-Werror=implicit-function-declaration]
45 | data->udp.sock = socket(bind_addr->sa_family, SOCK_DGRAM,
| IPPROTO_UDP);
Disable the native_posix board from networking samples so that CI can pass.
Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
The VLAN sample application only had configuration support for
the Ethernet interface and one VLAN interface, and left the one
VLAN interface unconfigured. Fix this by adding config support for
all three network interfaces created by the sample.
Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
The gPTP is not suppose to be run on top of VLAN and the
earlier support was just for testing purposes. Remove VLAN
support now after the VLAN overhaul.
Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
The VLAN interfaces are now Virtual type so we need to
collect only the Virtual interfaces and not Ethernet ones.
Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
The native_sim USB driver gives this error currently if one
enables CONFIG_POSIX_API.
drivers/usb/device/usb_dc_native_posix_adapt.c:22:10: \
fatal error: sys/un.h: No such file or directory
22 | #include <sys/un.h>
| ^~~~~~~~~~
compilation terminated.
Disable the netusb support from networking shells for native_sim
board for now so that CI can pass.
Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
Changing remaining users of fcntl.h to use the include from our own
POSIX file so that the values in there are consistent in all parts
of the sources.
Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
If enabling CONFIG_POSIX_API, we get three file descriptors open
before any socket descriptors. The sample exit criteria checks
socket 0 and 1 which is no longer a valid one, so change the
check to be either 0 or 3, and 1 or 4 so that the test can be
run in both when POSIX API is enabled or disabled.
Also disable color printing for the test run so that it is
easier to read the output log.
Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
This fixes this error printed by CI:
Too many thread objects (21)
Increase CONFIG_MAX_THREAD_BYTES to 3
Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
Change the sample applications that use network socket API to
use the POSIX_API config because the NET_SOCKETS_POSIX_NAMES is
deprecated. Convert also the zsock_ API calls to plain BSD
socket API calls when applicable.
Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
'native_sim' builds without any issues as part of twister and it also works
when manually setting up Ethernet virtual device (using
tools/net-tools/net-setup.sh).
Signed-off-by: Marcin Niestroj <m.niestroj@emb.dev>
'http_get' is one of the few samples that just require connection to
internet (google.com over HTTP or HTTPS) and check if HTTP GET was
successful. Use it for minimal coverage of Native Simulator offloaded
sockets:
* DNS resolving
* basic TCP transfer
* compatibility with Zephyr TLS subsystem (which required some fcntl()
operations)
Signed-off-by: Marcin Niestroj <m.niestroj@emb.dev>
So that the sample does not get stuck forever waiting
for an echo packet that will never come.
Signed-off-by: Tomi Fontanilles <tomi.fontanilles@nordicsemi.no>
- Async UART would start receiving some data incorrectly
without HW RX byte counting at baud rates above 115200.
- Increase the UART buffer sizes to be able to receive
whole UART TXs of 1500 bytes sent by SLM at once.
- Remove the Kconfig items whose definition is now redundant.
Signed-off-by: Tomi Fontanilles <tomi.fontanilles@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>
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>
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>
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>
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>
'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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
If server registration fails, allow fallback to secondary server,
or fallback to bootstrap.
Also allow fallback to different bootstrap server.
Add API to tell RD client when server have been disabled by
executable command.
Changes to RD state machine:
* All retry logic should be handled in NETWORK_ERROR state.
* New state SERVER_DISABLED.
* Internally disable servers that reject registration
* Temporary disable server on network error.
* Clean up all "disable timers" on start.
* Select server first, then find security object for it.
* State functions return void, error handling is done using states.
* DISCONNECT event will only come when client is requested to stop.
* NETWORK_ERROR will stop engine. This is generic error for all kinds
of registration or network failures.
* BOOTSTRAP_REG_FAILURE also stops engine. This is fatal, and we cannot
recover.
Refactoring:
* Server selection logic is inside server object.
* sm_handle_timeout_state() does not require msg parameter. Unused.
* When bootstrap fail, we should NOT back off to registration.
This is a fatal error, and it stops the engine and informs application.
Signed-off-by: Seppo Takalo <seppo.takalo@nordicsemi.no>
in ip_k66f platfrom, we using rtt as debug port,
which is conflicted with usermode. see below:
warning: LOG_PRINTK
(defined at subsys/logging/Kconfig.processing:8)
has direct dependencies !USERSPACE && !LOG_MODE_MINIMAL
&& LOG with value n, but is currently being y-selected
by the following symbols:
- LOG_BACKEND_RTT_FORCE_PRINTK
(defined at subsys/logging/backends/Kconfig.rtt:103),
with value y, direct dependencies LOG_BACKEND_RTT &&
!LOG_FRONTEND_ONLY && !LOG_MODE_MINIMAL && LOG (value: y),
and select condition LOG_BACKEND_RTT &&
!LOG_FRONTEND_ONLY && !LOG_MODE_MINIMAL && LOG (value: y)
Signed-off-by: Hake Huang <hake.huang@oss.nxp.com>
Using Connection Manager, it's easy to run lwm2m sample on
devices supporting different connectivity technologies
(for example, Wi-Fi and LTE).
Signed-off-by: Juha Ylinen <juha.ylinen@nordicsemi.no>
Add virtual LAN support to the sample so that it is easier to
test the multiple mDNS listener feature implemented in previous
commit.
Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
DTLS Connection Identifier support requires DTLS stack
that supports it. MbedTLS support in Zephyr is already
ported in, also some offloaded sockets support it.
Signed-off-by: Seppo Takalo <seppo.takalo@nordicsemi.no>
For several samples that today have native_sim
enabled, enable them also for native_sim.
And set native_sim as default integration_platform
instead of native_posix.
Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
* In the sample doc, replace native_posix references with native_sim
* Enable native_sim in the sample yaml
Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
* In the sample doc, replace native_posix references with native_sim
* Enable native_sim in the sample yaml, and switch
integration_platform
Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
* In the sample doc, replace native_posix references with native_sim
* Provide overlays for native_sim
* Enable native_sim in the sample yaml
* Remove native_posix from the sample yaml platform_allow as it was
filtered out by the host libC
Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
* In the sample doc, replace native_posix references with native_sim
* Provide overlays for native_sim
* Enable native_sim in the test yaml
Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
* In the sample doc and shell script,
replace native_posix references with native_sim
* Provide overlays for native_sim(_64)
* Enable native_sim in the test yaml
Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
Let's replace the references to native_posix with native_sim.
Background: during this release native_sim is replacing
native_posix as the main host test/development platform.
Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
Rename
Networking with native_posix
to
Networking with native_sim
replace all links to this page accordingly
and replace its references to native_posix with native_sim.
Background: during this release native_sim is replacing
native_posix as the main host test/development platform.
Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
* In the sample doc, replace native_posix references with native_sim
* Provide an overlay for native_sim
* Enable native_sim in the test yaml
Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
* In the sample doc, replace native_posix references with native_sim
* Provide an overlay for native_sim
* Enable native_sim in the test yaml
Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
When connection manager (CONFIG_NET_CONNECTION_MANAGER) is disabled,
application starts right away. Scenario that it covers is when static
networking is used, like with emulators (QEMU, Native Sim, ...).
Since 'connected' flag was not set in such scenario, the internal loop
inside start_client() has ended up early and stop_udp_and_tcp() was called
quickly after starting TCP and UDP clients.
Set 'connected = true', when connection manager is disabled, so that it is
assumed that connection is working for the whole duration of the
echo-client sample.
Signed-off-by: Marcin Niestroj <m.niestroj@emb.dev>
Added initial version of Infineon AIROC WIFI driver
Added initial version of binding file for Infineon AIROC WIFI
driver
Rename CONFIG_ABSTRACTION_RTOS_COMPONENT_ZEPHYR to
CONFIG_USE_INFINEON_ABSTRACTION_RTOS
Exclude cy8cproto_062_4343w platform from
drivers.modem.esp_at.build test
Change revision hal_infineon to
69c883d3bd9fac8a18dd8384624b8c472a68d06f
Signed-off-by: Nazar Palamar <nazar.palamar@infineon.com>
* Add support for running interoperability tests with
Qemu X86.
* Remove some debugging messages to allow binary to
fix Qemu Cortex-M3 board.
* Tune buffer and stack sizes to fit all boards.
Signed-off-by: Seppo Takalo <seppo.takalo@nordicsemi.no>
Instead of forcing use of NEWLIB_LIBC, select any available complete C
library implementation. Add CONFIG_REQUIRES_FLOAT_PRINTF and adjust
CONFIG_LIBC_MALLOC_ARENA_SIZE as needed.
Signed-off-by: Keith Packard <keithp@keithp.com>
The sample enables CONFIG_NET_IPV4_MAPPING_TO_IPV6 and then
turns off IPV6_V6ONLY option which allows it to support both
IPv6 and IPv4 using the same socket.
Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
Fix the west invokation. "-t" is added automatically
to the run goal, otherwise we get a "-t -t" command.
Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
Add test script that uses same configuration that the
interoperability test.
This is only checking that unsecure client registers and
responds to a GET query.
Signed-off-by: Seppo Takalo <seppo.takalo@nordicsemi.no>
The old Makefiles which can be used to build this samples
directly as Linux apps and the description in the READMEs
could be quite missleading.
Building this apps in this way has nothing to do with the
Zephyr native_posix/sim targets. This is about building
them as actual Linux applications without Zephyr or any
HW models.
So let's rename the Makefiles and change the description
in the docs to avoid confusion.
Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
This application is no longer needed as we have removed
the automatic startup support which was used by this sample.
Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
Add new configuration value CONFIG_LWM2M_UPDATE_PERIOD
that allows calculating update period from last update,
instead of calculating it from the lifetime.
In runtime, server is allowed to change the lifetime of the
registration which causes update perdiod to be effected.
When fixed update period is preferred, UPDATE_PERIOD
config is then used.
Signed-off-by: Seppo Takalo <seppo.takalo@nordicsemi.no>
rand32.h does not make much sense, since the random subsystem
provides more APIs than just getting a random 32 bits value.
Rename it to random.h and get consistently with other
subsystems.
Signed-off-by: Flavio Ceolin <flavio.ceolin@intel.com>
The conn_mgr_monitor.h was not included so the compilation
gave warning for missing conn_mgr_ignore_iface() function.
Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
Added a new event for LWM2M_RD_CLIENT_EVENT_DEREGISTER for
indicate LwM2M client dereistartion.
Updated unit test and sample for new event type
Signed-off-by: Juha Heiskanen <juha.heiskanen@nordicsemi.no>
mps2_an385 was excluded from networking tests, therefore can no longer
be used as an integration platform. Replace it with qemu_x86.
Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
Update the TLS part of the big_http_download sample to reference the
currently used server used for file download.
Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
The download server that the origin server redirects to seems now to
use different certificate (signed by a different root CA). Therefore
add the additional root CA to the certificate list and refactor the
sample code a bit to allow to easily extend/replace certificates in the
future.
Bump the mbed TLS heap size a bit to accommodate the extra registered
certificate.
Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
Added functionality to change the syslog server's
ip address at runtime as well as sample for
syslog network backend
Signed-off-by: David Corbeil <david.corbeil@dynon.com>
Use the new code-sample directive and roles to document the networking
samples so that they show up as "Related samples" when browsing the
various relevant networking APIs.
Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
This modification frees up around ~10kB of RAM and make sample code
working again.
1) Reduced net packet size and count.
2) Increase Wi-Fi heap to avoid memory allocation failure.
3) Keep log as minimal.
Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
cipher_list and sec_tag_list are used only with zsock_setsockopt
in MQTT. For that use, they can be const (and potentially kept
in flash memory).
Signed-off-by: Miika Karanki <miika.karanki@vaisala.com>
Google Cloud IoT Core has been retired on August 16, 2023.
Removed the sample and the link to it in a previous release note.
Added a redirect to other IoT cloud samples.
Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
This commit adds a sample application which demonstrates how
to use the new driver and modules. The sample uses power
management to turn on the modem, uses network management
to wait for L4 connected, then uses DNS to get the IP
of the server running the python script found in the
server folder, which echoes back data recevied to it.
A packet containing psudo random data is then sent to
the server, which the echoes it back. To validate the
capability of the driver to restart the modem, the
modem is restarted, and the packet is sent again.
The server is hosted by linode, and uses the domain
name test-endpoint.com
Signed-off-by: Bjarki Arge Andreasen <baa@trackunit.com>
The connectivity monitoring subfeature of conn_mgr is currently also
named conn_mgr, which is confusing.
This commit renames it to conn_mgr_monitor, or conn_mgr_mon for short,
for clarity.
Signed-off-by: Georges Oates_Larsen <georges.larsen@nordicsemi.no>
CONFIG_COVERAGE has been incorrectly used to
change other kconfig options (stack sizes, etc)
code defaults, as well as some samples behaviour,
which should not have dependend on it.
Instead those should have depended on COVERAGE_GCOV,
which, being the one which adds special code and
temporary RAM storage for embedded targets,
require changes to many features.
When building for the native targets, all this was
unnecessary.
=> Fix the dependency.
Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
Add simple TFTP client code using TFTP client library
Initiate connection (IPv4) with optional DNS resolution
Operate get operation then put operation in octet mode
Tested on native_posix
Issue/Discussion #60985
Signed-off-by: romain pelletant <romain.pelletant@fullfreqs.com>
Add `yd_esp32` board:
- Model name: YD-ESP32
- Manufacturer: VCC-GND® Studio
- Espressif module: ESP32-WROOM-32E
Signed-off-by: Julio Cesar <hi@jcsx.dev>
A sneaky whitespace was causing inconsistent rendering in the list of
available overlays.
Fixed by switching to a list table which is arguably now even easier to
read.
Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
This board has a single instance of EMAC connected to a NXP TJA1103
Ethernet PHY. Currently, there is no driver for this PHY and its
pin strapping configuration allows to use it without software
configuration, so EMAC is configured as fixed link.
Signed-off-by: Manuel Argüelles <manuel.arguelles@nxp.com>
Use 64bit timestamps from k_uptime_get() so they don't
roll over during the expected device lifetime.
Fixes#60826
Signed-off-by: Seppo Takalo <seppo.takalo@nordicsemi.no>
Allow socket-loop to wake up immediately, if there are changes,
instead of waiting for zsock_poll() to timeout.
This change makes engine more reactive and removes
hard coded timeout from zsock_poll().
Signed-off-by: Seppo Takalo <seppo.takalo@nordicsemi.no>
The IEEE 802.15.4 API and networking subsystem were using several
inconsistent timestamp resolutions and types. This change defines all
timestamps with nanosecond resolution and reduces the number of
available types to represent timestamps to two:
* `struct net_ptp_time` for PTP timestamps
* `net_time_t` for all other high resolution timestamps
All timestamps (including PTP timestamps) are now referred to a
"virtual" local network subsystem clock source based on the well-defined
types above. It is the responsibility of network subsystem L2/driver
implementations (notably Ethernet and IEEE 802.15.4 L2 stacks) to ensure
consistency of all timestamps and radio timer values exposed by the
driver API to such a network subsystem uptime reference clock
independent of internal implementation details.
The "virtual" network clock source may be implemented based on arbitrary
hardware peripherals (e.g. a coarse low power RTC counter during sleep
time plus a high resolution/high precision radio timer while receiving
or sending). Such implementation details must be hidden from API
clients, as if the driver used a single high resolution clock source
instead.
For IEEE 802.15.4, whenever timestamps refer to packet send or receive
times, they are measured when the end of the IEEE 802.15.4 SFD (message
timestamp point) is present at the local antenna (reference plane).
Due to its limited range of ~290 years, net_time_t timestamps (and
therefore net_pkt timestamps and times) must not be used to represent
absolute points in time referred to an external epoch independent of
system uptime (e.g. UTC, TAI, PTP, NTP, ...).
Signed-off-by: Florian Grandel <fgrandel@code-for-humans.de>
add one Ethernet twister test for nucleo_h563zi,
nucleo_h743zi, nucleo_f429zi, nucleo_f746zg.
remove the common: harnesses: net that are not supported
leave harnesses: net for all other test execpt the one we use
Signed-off-by: Marc Desvaux <marc.desvaux-ext@st.com>
This is no longer necessary, as this option is selected as a dependency
for class implementations where it is required.
Also remove redundant test cases.
Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
Remove virtual esp32 board and replace it with the
real word boards:
- esp32_devkitc_wroom
- esp32_devkitc_wrover (with PSRAM option)
Signed-off-by: Marek Matej <marek.matej@espressif.com>
There is some ambiguity with the DHCPv4 handling in the dns_resolve
sample. On one hand, the sample uses net_config library, which does
initiate the DHCPv4 on the interface (if enabled) and may block the
initialization until the address is assigned (in case there is no other
statically assigned IPv4 addresses.) On the other hand, the sample
registers for NET_EVENT_IPV4_ADDR_ADD in case DHCPv4 is in use, delaying
the DNS queries until address is assigned.
In case net_config delayed the initialization however, this will not
work, as the event handler will be registered only after DHCPv4 address
is assigned, so the callback will not get executed.
Fix this, by checking if DHCPv4 assigned address already exists on an
interface - if so, schedule DNS queries immediately. Otherwise (for
example in case when net_config was not configured to wait for address)
register an event callback, and schedule queries from there.
Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
If the default which is set to CONFIG_BOARD is used, then the lwm2m
client fails to set the client identity as the default maximum length
allowed is only 16 and for some boards this exceeds.
So, increase the default length to accomodate almost all boards. Also
add a build assert for the length validation.
Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
In case UDP is disabled, init_udp() is not compiled and the build
fails. Fix this, by providing dummy implementations for UDP functions,
in case UDP is disabled.
Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
All application level TLS operations should be guarded with
"#if defined(CONFIG_NET_SOCKETS_SOCKOPT_TLS)" and not mbed TLS configs
only. Otherwise, in case mbed TLS is enabled, but the sample is not
configured to use TLS (hence TLS credential library is not available
for example), the build may fail or produce spurious warnings.
Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
Add support for using X509 certificates.
Default settings use ECDSA certificates with SHA256 hash.
When different settings are required clients should overwrite
struct lwm2m_ctx->load_credentials() and
struct lwm2m_ctx->set_socketoptions()
Signed-off-by: Seppo Takalo <seppo.takalo@nordicsemi.no>
websocket_disconnect api does not closes user tcp socket, so tcp socket
must be closed after done.
Signed-off-by: Saravanan Sekar <saravanan@linumiz.com>
The method ieee802154_radio_handle_ack() does not belong to the
PHY/radio layer but to the L2 layer. It is a callback called from the
radio layer into the L2 layer and to be implemented by all L2 stacks.
This is the same pattern as is used for ieee802154_init(). The
'_radio_' infix in this function is therefore confusing and
conceptually wrong.
This change fixes the naming inconsistency and extensively documents
its rationale.
It is assumed that the change can be made without prior deprecation of the
existing method as in the rare cases where users have implemented custom
radio drivers these will break in obvious ways and can easily be fixed.
Nevertheless such a rename would not be justified on its own if it were
not for an important conceptual reason:
The renamed function represents a generic "inversion-of-control" pattern
which will become important in the TSCH context: It allows for clean
separation of concerns between the PHY/radio driver layer and the
MAC/L2 layer even in situations where the radio driver needs to be
involved for performance or deterministic timing reasons. This
"inversion-of-control" pattern can be applied to negotiate timing
sensitive reception and transmission windows, it let's the L2 layer
deterministically timestamp information elements just-in-time with
internal radio timer counter values, etc.
Signed-off-by: Florian Grandel <fgrandel@code-for-humans.de>
This commit replaces the workarounds spread around the
drivers and subsystems with the updated PPP L2
interface.
Signed-off-by: Bjarki Arge Andreasen <baa@trackunit.com>
running samples/net/cloud/mqtt_azure in QEMU with default
configuration crashes with exception. This PR change doubles
the default workqueue stack size in a attempt to fix the issue
reported in: GH#58930.
Signed-off-by: Andrei Hutanu <andrei.hutanu.i@gmail.com>
- Add integration_platforms to avoid excessive filtering
- Make sure integration platforms are actually part of the filter
- Fix some tags and test meta data
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
Remove usage of Kconfig symbol `CONFIG_BT_DEBUG_LOG` from samples. It
has been deprecated since this PR:
https://github.com/zephyrproject-rtos/zephyr/pull/56183
The Kconfig symbols has been replaced by `CONFIG_LOG=y` on most of the
cases. Or it has been removed when not needed anymore.
Signed-off-by: Théo Battrel <theo.battrel@nordicsemi.no>
send_simple_coap_request needs to return a result from previous functions
instead of success at the end of the function. Without doing so the example
may wait for a response from a coap sever when a message failed to send.
Signed-off-by: Matthew Bradbury <matt-bradbury@live.co.uk>
Extend the DHCPv4 sample to make use of the option callback functionality.
This serves as a reference of how to register and use a custom option
callback.
Signed-off-by: Matthias Breithaupt <m.breithaupt@vogl-electronic.com>
Clarify the comment in the code so people looking to use mDNS don't
think that interaction with Zephyr is necessary for mDNS support to
work, its in fact built into the networking stack when the mDNS
feature is enabled.
Signed-off-by: Chris Morgan <chmorgan@gmail.com>
conn_mgr now allows applications to request that ifaces be ignored.
This commit changes the echo_server sample to use this feature to
filter out the tunnel iface, instead of manually filtering events
generated by it.
This will allow the echo_server sample to remain compatible with
planned changes to conn_mgr, namely a switch from events being
fired for every individual iface that goes up or down, to only
being fired when connectivity is gained or completely lost.
Signed-off-by: Georges Oates_Larsen <georges.larsen@nordicsemi.no>
Since conn_mgr is a subsystem rather than a library, relocate it
directly into subsys/net rather than subsys/net/lib/
Rename header files to better match their function.
Remove net_ prefix from conn_mgr types, API, and files, since it is
unnecessary.
Signed-off-by: Georges Oates_Larsen <georges.larsen@nordicsemi.no>
Add DT and Kconfig overlay for new experimental CDC ECM
implementation. USB device support configuration and
initialization can be done through shell by following
commands:
uart:~$ usbd config add 1
uart:~$ usbd class add cdc_ecm_0 1
uart:~$ usbd defaults
uart:~$ usbd init
uart:~$ usbd enable
Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
This sample application demonstrates the implementation of an
MQTT client that can publish messages to AWS IoT Core using
the MQTT protocol.
Fixes#22866
Signed-off-by: Lucas Dietrich <ld.adecy@gmail.com>
Twister now supports using YAML lists for all fields that were written
as space-separated lists. Used twister_to_list.py script. Some artifacts
on string length are due to how ruamel dumps content.
Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
Now that the nrf52 HW models support it,
let's use their flash model instead of falling back
to the openthread RAM settings backend.
Note that the flash model defaults to just keeping the
flash content in the Linux process heap.
Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
With the minimal C library malloc implementation moving to libc/common, all
of the related Kconfig variables have also changed. Update uses within the
tree.
Signed-off-by: Keith Packard <keithp@keithp.com>
Extend the sample to be built with native_posix
prevent issues like #57133 in the future. Also extends the qemu
build to build a "raw" configurationw without POSIX_API or
NET_SOCKETS_POSIX_NAMES.
Signed-off-by: Hein Wessels <heinwessels93@gmail.com>
Fixes the compiler error that occurs when attempting to build
the SNTP library with CONFIG_NET_SOCKETS_POSIX_NAMES=n, while
using native_posix.
Closes#57133
Co-authored-by: Chris Friedt <cfriedt@meta.com>
Signed-off-by: Hein Wessels <heinwessels93@gmail.com>
Remove all init functions that do nothing, and provide a `NULL` to
*DEVICE*DEFINE* macros.
Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
MISRA Rule 5.7 requires uniqueness of tag identifiers. Shell is
frequently problematic because many code uses `const struct shell
*shell`. This causes CI noise every time one of these shell files is
edited, so let's update all of them with `const struct shell *sh`
instead.
Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
As both C and C++ standards require applications running under an OS to
return 'int', adapt that for Zephyr to align with those standard. This also
eliminates errors when building with clang when not using -ffreestanding,
and reduces the need for compiler flags to silence warnings for both clang
and gcc.
Most of these changes were automated using coccinelle with the following
script:
@@
@@
- void
+ int
main(...) {
...
- return;
+ return 0;
...
}
Approximately 40 files had to be edited by hand as coccinelle was unable to
fix them.
Signed-off-by: Keith Packard <keithp@keithp.com>
Add config file and devicetree overlay for the fvp_base_revc_2xaemv8a
board, so that this sample can run on this board.
Signed-off-by: Huifeng Zhang <Huifeng.Zhang@arm.com>
Add config file and devicetree overlay for the fvp_baser_aemv8r board,
so that this sample can run on this board.
Signed-off-by: Huifeng Zhang <Huifeng.Zhang@arm.com>
Add config file and devicetree overlay for the fvp_base_revc_2xaemv8a
board, so that this sample can run on this board.
Signed-off-by: Huifeng Zhang <Huifeng.Zhang@arm.com>
Add config file and devicetree overlay for the fvp_baser_aemv8r board,
so that this sample can run on this board.
Signed-off-by: Huifeng Zhang <Huifeng.Zhang@arm.com>
To disable the flash by default so the openthread RAM
settings backend is used instead.
This allows using this samples with the overlay-ot.conf
directly in the simulated nrf52_bsim.
Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
k_work_* APIs cannot be used from user threads, hence it has to be
replaced with some other solution to retain userspace functionality in
the sample.
This commit reworks the sample as follows:
* Replace delayed work items with combination of k_timer and a
dedicated thread to send UDP packets. k_poll_signal is used for
communication between k_timer callback and UDP thread.
* As kernel objects should not be placed in a memory modifiable from
user threads, declare a separate structure for them, and link it
with the client context structure with a pointer.
* k_timer_init() is not a system call, therefore it has to be called
from supervisor thread. Therefore, add an additional function to
initialize UDP, and use it to initialize kernel objects used by the
UDP module and grant access for the main thread before it becomes an
user thread. UDP thread inherits permissions from the parent (main
thread).
Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
Not all toolchains support newlib so tests that require newlib need
to have a filter to we don't try and build those tests on those
testcases. Add the following to samples.yaml to handle the issue:
filter: TOOLCHAIN_HAS_NEWLIB == 1
Signed-off-by: Kumar Gala <kumar.gala@intel.com>
Current stack size is making build fail due to ram overflow.
So, decresase total heap available to make room for the application.
Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
1. `zsock_socket()` gets the right packet familiy.
2. `inet_pton()` returns 1 on success.
This should address #55193.
Signed-off-by: Sebastian Arnd <sebastianarnd@gmail.com>
Allow to register a callback function which is called when a firmware
update is canceled by the cancel command.
Signed-off-by: Marc Lasch <marc.lasch@husqvarnagroup.com>
k_work_* API cannot not be used from the user threads as the APIs are
not syscalls. Doing so leads to a crash when userspace is enabled.
As the current use of delayed work API from user threads is merely
scheduling of the initial work execution, it can be moved into the main
thread context. The time difference from the former and current approach
should be marginal, as the start_tcp/udp_proto() calls are not blocking
calls.
Another issue was usage of k_mem_domain_add_thread() on uninitialized
TCP threads. This lead to another crash, as assigning thread to a memory
domain also involves removing it from the previous domain, which lead to
NULL pointer dereference if thread was not initialized yet. As, by
default, newly spawned threads inherit memory domain assignment from
their parent, it's not really needed to assign the same domain
explicitly, hence, it can be safely removed.
Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
Adds REQUIRED to samples and tests for finding the zephyr package
to align all samples and tests with the same call and parameters.
Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
Some features like IP fragmenting are default disabled to keep the network
stack compact for small devices.
In bigger applications as well as for the Maxwell Pro tests it required
to have the full functionality enabled. This can also work as example for
new projects.
Signed-off-by: Sjors Hettinga <s.a.hettinga@gmail.com>
New event LWM2M_RD_CLIENT_EVENT_REG_UPDATE to indicate
application that engine starts registration update.
Signed-off-by: Juha Ylinen <juha.ylinen@nordicsemi.no>
The source file for most single-file sample apps is usually
`main.c`. Rename this file to be consistent with other
samples.
Signed-off-by: Chris Friedt <cfriedt@meta.com>
* use `read()` instead of `recv()`
* use `write()` instead of `send()`
* use `CONFIG_POSIX_API` and drop `<zephyr/posix/..>` prefix
* use `perror()`
* fix `Makefile.posix` to use `CC` instead of `CXX`
* fix race condition which caused an unhandled EOF
and infinite loop, by adding a readback / echo
* Updated the docs to reflect the expected stdout
* Improve doc clarity
Signed-off-by: Chris Friedt <cfriedt@meta.com>
Recent Zephyr changes (IEEE 802.15.4 config moved from KConfig
to DeviceTree) left the TI CC1352r1_launchxl board's net examples in
a non-working state, mainly due to the fact that CC13x2 has two
IEEE802154 interfaces available (2.4GHz and sub-GHz) and none were
enabled.
This commit enables the 2.4GHz radio inside the board's DTS and also
introduces a new devicetree overlay inside the echo* samples:
'boards/boards/cc1352-enable-subg.overlay', enabling the sub-GHz
interface.
Signed-off-by: Stancu Florin <niflostancu@gmail.com>
By default, qemu_coxtex_m3 target selected SLIP driver as
a network backend. This requires some unstandard tool (tunslip6),
which are error prone and might not necessary work.
Ethernet backend work equally well as in native_posix so
use the same for both.
Change the default emulation platform from X86 to Cortex-M3
because it supports Ethernet by default.
Signed-off-by: Seppo Takalo <seppo.takalo@nordicsemi.no>
Disables allowing the python argparse library from automatically
shortening command line arguments, this prevents issues whereby
a new command is added and code that wrongly uses the shortened
command of an existing argument which is the same as the new
command being added will silently change script behaviour.
Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
Allow endpoint name, PSK and TLS tag and server address
to be configured in Kconfig.
When endpoint name is not defined, use CONFIG_BOARD.
Also use endpoint name as a PSK ID instead of hard coded
"Client_identity" which would collide if more than one instance
is ran against same server. Now we could define different identity
for each endpoint.
Also, as a mininal refactor, allow DNS names to be used in
server address, instead of assuming IP address.
Signed-off-by: Seppo Takalo <seppo.takalo@nordicsemi.no>
By default, qemu_coxtex_m3 target selected SLIP driver as
a network backend. This requires some unstandard tool (tunslip6),
which are error prone and might not necessary work.
Ethernet backend work equally well as in native_posix so
use the same for both.
Change the default emulation platform from X86 to Cortex-M3
because it supports Ethernet by default.
Signed-off-by: Seppo Takalo <seppo.takalo@nordicsemi.no>
The sample documentation mentions that the sample can be built directly
on Linux, which was no longer the case. This commit fixes it.
Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
The old link has expired, the file is no longer avaiable to download.
Update the download link, which now leads to a file in Ubuntu
repositories for the recent LTS release, hopefully making the link valid
for longer period.
As the server ceritficate is signed by a different root CA, update the
root CA as well.
Finally, cleanup how the URL is handled in the sample - for TLS variant
it'll always be provided with a Kconfig, hence no need to repeat it in
the sample.
Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
It's often the case with TLS file servers, that the download link does
not lead to downloaded file, but rather redirects to another server.
Therefore it makes sense to have a minimal support in the sample for
HTTP redirection, so that the file can still be downloaded.
Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
This application uses the uart1 DT node, so it should enable it,
not assume that it will be enabled by default for a given board.
Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
This commit updates all in-tree code to use `CONFIG_CPP` instead of
`CONFIG_CPLUSPLUS`, which is now deprecated.
Signed-off-by: Stephanos Ioannidis <stephanos.ioannidis@nordicsemi.no>
Disables having USB enabled for boards that configure USB CDC for
console, shell or logging at bootup in applications that enable USB
to prevent a conflict arising whereby USB is registered from
multiple points and later calls fail.
Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
Fix all line-length errors detected by yamllint:
yamllint -f parsable -c .yamllint $( find -regex '.*\.y[a]*ml' ) | \
grep '(line-length)'
Using a limit is set to 100 columns, not touching the commandlines in
GitHub workflows (at least for now).
Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
Fix all comments-indentation errors detected by yamllint:
yamllint -f parsable -c .yamllint $( find -regex '.*\.y[a]*ml' ) | \
grep '(comments-indentation)'
This checks that the comment is aligned with the content.
Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
Fix all thruthy errors detected by yamllint:
yamllint -f parsable -c .yamllint $( find -regex '.*\.y[a]*ml' ) | \
grep '(truthy)'
This only accepts true/false for boolean properties. Seems like python
takes all sort of formats:
https://github.com/yaml/pyyaml/blob/master/lib/yaml/constructor.py#L224-L235
But the current specs only mention "true" or "false"
https://yaml.org/spec/1.2.2/#10212-boolean
Which is the standard yamllint config.
Excluding codeconv and workflow files, as some are using yes/no instead
in the respective documentation.
Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
Now that we a proper API, shell is just optional, so, make the
dependency optional by refactoring the code.
Also, add a build test combination in twister.
Signed-off-by: Krishna T <krishna.t@nordicsemi.no>
Clean up occurrences of "#if IS_ENABLED(CONFIG_FOO)" an replace
with classical "#if defined(CONFIG_FOO)".
Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
websocket_recv_msg() is reworked with using fsm. Now the function
return 0 when payload is empty, -ENOTCONN if socket close. Receiving
empty ping and sending empty pong were added in tests.
Fixes#52327
Signed-off-by: Grixa Yrev <grixayrev@yandex.ru>