Date   

Test-related labels on GitHub

Carles Cufi
 

Hi all,

I have tried to clean up the test-related labels on GitHub, performing the following changes:

- "Testing" has been removed
- "Testing Suite" has been renamed to "Test Framework" and should be used for issues that are related to either the framework or missing platforms (eg. a new target on QEMU, an issue that affects multiple individual tests)
- "Tests" should be used for issues related to specific tests
- "Sanitycheck" should be used for issues related to the sanitycheck Python script

Additional labels, such as "Bug" or the relevant architecture(s) should be used to complement the information provided by the Test-related ones.

I have tried to go through all test-related issues and re-label them as appropriate.
Please use the new labels as described.

Thanks,

Carles


[2.3 release] Feature merge window close (M2) next week

Carles Cufi
 

Hi all,

This is just a reminder that the feature merge window close is on the 8th of May.
This means that any changes that are not bugfixes or documentation changes must be merged by then.

See the full timeline for the 2.3 release here:
https://github.com/zephyrproject-rtos/zephyr/wiki/Program-Management#actual-and-planned-milestone-dates

Thanks,

Carles


Re: Connect two Zephyr instances via zeth interface

Jukka Rissanen
 

Hi Lei,

see this example how to setup Linux host in this kind of setup
https://github.com/zephyrproject-rtos/zephyr/issues/24282

Cheers,
Jukka

On Tue, 2020-04-28 at 17:19 +0200, Lei Xu wrote:
Hi,

I'm implementing two zephyr projects in the same host, which will
communicate with each other. Then I found the sample code
https://docs.zephyrproject.org/latest/samples/net/eth_native_posix/README.html
, which shows how to setup two zephyr instances that can communicate
via the created zeth interfaces. I have tried exactly what the
instruction writes, but it doesn't work when I tried to ping the
device in the net-shell. So, could you give me some tips, should I
configure anything else in my host? Or may be some necessaries that
are missed in the instruction?

Also, as an alternative method, I tried to run net-setup.sh script
and create a zeth interfaces, in which several IP addresses are
added. My question is: is that possible for the zephyr project
directly to set the created zeth as the default interface? So that
zephyr project can directly use the added IP address.

Looking forward for your reply. Thank you!



Kind regards,

Lei


Connect two Zephyr instances via zeth interface

Lei Xu <lei.xu@...>
 

Hi,

I'm implementing two zephyr projects in the same host, which will communicate with each other. Then I found the sample code https://docs.zephyrproject.org/latest/samples/net/eth_native_posix/README.html, which shows how to setup two zephyr instances that can communicate via the created zeth interfaces. I have tried exactly what the instruction writes, but it doesn't work when I tried to ping the device in the net-shell. So, could you give me some tips, should I configure anything else in my host? Or may be some necessaries that are missed in the instruction?

Also, as an alternative method, I tried to run net-setup.sh script and create a zeth interfaces, in which several IP addresses are added. My question is: is that possible for the zephyr project directly to set the created zeth as the default interface? So that zephyr project can directly use the added IP address.

Looking forward for your reply. Thank you!


Kind regards,

Lei


API meeting: agenda

Carles Cufi
 

Hi all,

*************************************************
We will be using Teams instead of Zoom:
https://teams.microsoft.com/l/meetup-join/19%3ameeting_YzYzZTAzNGItOWFiMS00MDBkLTkyYmMtNzljZjkwNDVlMThm%40thread.v2/0?context=%7b%22Tid%22%3a%22686ea1d3-bc2b-4c6f-a92c-d99c5c301635%22%2c%22Oid%22%3a%2262b63b80-05d3-4465-b5a0-f04e4e156f10%22%7d
*************************************************

Tomorrow's topics:

- Disabling a PWM signal:
- PR: https://github.com/zephyrproject-rtos/zephyr/pull/24724

- RTC API follow-up (if the relevant people are present)
- PR: https://github.com/zephyrproject-rtos/zephyr/pull/23526

- Documenting API behavior in Doxygen:
- Issue: https://github.com/zephyrproject-rtos/zephyr/issues/18970
- Issue: https://github.com/zephyrproject-rtos/zephyr/issues/21061

- clock_control extension to gather feedback
- PR: https://github.com/zephyrproject-rtos/zephyr/pull/24334

Additional items in the "Triage" column in the GitHub project may be discussed if time permits.
If you want an item included in the meeting, please add it to the GitHub project.

https://github.com/zephyrproject-rtos/zephyr/wiki/Zephyr-Committee-and-Working-Group-Meetings#zephyr-api-discussion
https://github.com/zephyrproject-rtos/zephyr/projects/18
https://docs.google.com/document/d/1lv-8B5QE2m4FjBcvfqAXFIgQfW5oz6306zJ7GIZIWCk/edit

Regards,

Carles


Re: std::map where type of key is struct #std

Leo
 

Hi all again,

To fix this issue I only had to add CONFIG_LIB_CPLUSPLUS=y to my prj.conf file.

Thanks pabigot !
Leo


std::map where type of key is struct #std

Leo
 

Hello all,
I am trying to create an std::map where type of key is struct and I provide my own comparator.
The code compiles/executes correctly with g++ (click on links below) outside of the Zephyr environment but fails otherwise.
Am I missing some CONFIG_ statements in prj.conf? How do I fix this issue?
Thanks,
Leo

All of these work with g++:
    User-defined comparator:
        http://cpp.sh/8esou

    Template specialization:
        http://cpp.sh/7cslu

    Operator overloading:
        http://cpp.sh/4r3yw

None of the above work with Zephyr:
    main.cpp (user-defined comparator):
        #include <sys/printk.h>
        #include <map>
       
        struct Data {
            int index;
        };
       
        struct Comparator {
            bool operator() (const Data& first, const Data& second) const {
                return first.index < second.index;
            }
        };
       
        int main() {
            std::map<Data, int, Comparator> container;
            container[Data {0}] = 0;
            container[Data {0}] = 1;
            printk("%s\n", container.find(Data {0}) == container.end() ? "not found" : "found");
            return 0;
        }
       
    ZEPHYR_TOOLCHAIN_VARIANT:
        gnuarmemb
       
    gnuarmemb version:
        7-2018-q2-update

    prj.conf:
        CONFIG_NEWLIB_LIBC=y
        CONFIG_PRINTK=y
        CONFIG_STDOUT_CONSOLE=y
        CONFIG_CPLUSPLUS=y
        CONFIG_STD_CPP17=y
   
    compilation:
        west build -p auto -b nrf52840_pca10056 std_test
       
errors:
************
In function `std::_Rb_tree<Data, std::pair<Data const, int>, std::_Select1st<std::pair<Data const, int> >, Comparator, std::allocator<std::pair<Data const, int> > >::_M_get_insert_unique_pos(Data const&)':
arm-none-eabi/include/c++/7.3.1/bits/stl_tree.h:302: undefined reference to `std::_Rb_tree_decrement(std::_Rb_tree_node_base*)'
app/libapp.a(main.cpp.obj): In function `std::map<Data, int, Comparator, std::allocator<std::pair<Data const, int> > >::operator[](Data&&)':
arm-none-eabi/include/c++/7.3.1/bits/stl_tree.h:2304: undefined reference to `std::_Rb_tree_insert_and_rebalance(bool, std::_Rb_tree_node_base*, std::_Rb_tree_node_base*, std::_Rb_tree_node_base&)'
arm-none-eabi/include/c++/7.3.1/bits/stl_tree.h:302: undefined reference to `std::_Rb_tree_decrement(std::_Rb_tree_node_base*)'
arm-none-eabi/include/c++/7.3.1/bits/stl_tree.h:287: undefined reference to `std::_Rb_tree_increment(std::_Rb_tree_node_base*)'
collect2.exe: error: ld returned 1 exit status
%
ninja: build stopped: subcommand failed.
FATAL ERROR: command exited with status 1: 'cmake.EXE' --build 'build'
************


Release Readiness meeting today

Carles Cufi
 

Hi all,

The release readiness meeting today will take place as planned, just using Webex instead of Zoom:

*******************************

NOTE: We will be using Webex for this meeting instead of zoom. The link is here:
https://meetingsemea5.webex.com/meetingsemea5/e.php?MTID=m64daae188a1da10f363b25708426dcb2

*******************************

Additional info:
https://github.com/zephyrproject-rtos/zephyr/wiki/Zephyr-Committee-and-Working-Group-Meetings#zephyr-release-readinessbug-triage

Regards,

Carles


Re: #mqtt Failed to obtain RX buffer #mqtt #api

Jukka Rissanen
 

Hi Erik,

you are running out of RX network buffers. Try to increase the value of
CONFIG_NET_BUF_RX_COUNT
and optionally
CONFIG_NET_PKT_RX_COUNT
options.

Cheers,
Jukka

On Sun, 2020-04-19 at 23:58 -0700, erik.samyn@gmail.com wrote:
Hi,

I'm implementing mqtt on an nucleo stm32 board (stm32f767zi). The
communication from the broker seemed to work OK at first, however
when stressing the communication a bit the next error appears
multiple times in the log:
==> "<err> eth_stm32_hal: Failed to obtain RX buffer".

What can be the cause of this?

Kind regards

Erik Samyn


API meeting cancelled today

Carles Cufi
 

Hi all,

I have cancelled the API meeting today due to my lack of availability today. To my knowledge, we did not have any pressing matters to discuss, but as always please let me know or add the issue or PR to the API review/cleanup/rework GitHub project in order to be discussed next week.

Apologies for the short notice.

Regards,

Carles


#mqtt Failed to obtain RX buffer #mqtt #api

erik.samyn@...
 

Hi,

I'm implementing mqtt on an nucleo stm32 board (stm32f767zi). The communication from the broker seemed to work OK at first, however when stressing the communication a bit the next error appears multiple times in the log:
==> "<err> eth_stm32_hal: Failed to obtain RX buffer".

What can be the cause of this?

Kind regards 

Erik Samyn


Re: #api #api

Andy Ross
 

On 4/16/2020 3:20 PM, r.gokool@gmail.com wrote:
Hello, I am new to Zephyr. I have a need to write code that runs on both RTOS and linux. It is structured as an event loop that can monitor sockets, local queues and timers for Linux. When looking at the APIs in the RTOS I noticed that there is no common poll API. Isee k_poll() can poll kernel objects while zsock_poll() can poll sockets. Is there a way to monitor sockets and kernel objects using the same event loop?
If not I am curious to understand why the API deviates from Linux. Is there an RTOS specific benefit to splitting the poll api this way?
Mostly for the same sorts of reasons that poll() in Linux can't wait on a POSIX condition variable or futex.

The zsock_poll() implementation is designed to work the way it works on existing Berkley sockets code, and it understands sockets in the network layer. The kernel k_poll() abstraction understands existing kernel objects, which aren't sockets.

That said, it wouldn't be impossible to make these interoperate. The k_poll_event object has a "signal" type which allows arbitrary external code to provide wakeup notifications to threads blocked in k_poll(). Someone could write a constructor for such a k_poll_event in the network layer without too much trouble, I think.

It's possible we could remove the zsock_poll() implementation entirely and replace it with this sort of wrapper around k_poll, actually. But I haven't looked at that implementation and don't know what would be involved or what the costs might be.

Andy


#api #api

r.gokool@...
 

Hello, I am new to Zephyr. I have a need to write code that runs on both RTOS and linux. It is structured as an event loop that can monitor sockets, local queues and timers for Linux. When looking at the APIs in the RTOS I noticed that there is no common poll API. I see k_poll() can poll kernel objects while zsock_poll() can poll sockets. Is there a way to monitor sockets and kernel objects using the same event loop?
If not I am curious to understand why the API deviates from Linux. Is there an RTOS specific benefit to splitting the poll api this way?

Input and suggestions requested. Thanks.


Build size of bluetooth and ip stack #bluetooth #nrf51822

mdl.mailme@...
 

Hi, 

i am trying to build the bluetooth/ipsp/ example for the nrf51, but the build fails because the SRAM overflows (50kB usage with 32kB available on the nRF51). Also, the Flash usage is 98%. I checked the zephyr_prebuilt.map file to see the sizes of the single modules/libraries. It shows that only the bluetooth and ip modules use around 180kB of Flash and 32kB of SRAM. Is it normal for it to be this large? If yes, is there a possibility of reducing the size of those modules?

I attached the zephyr_prebuilt.map file, the output of my self built parser showing the ROM and RAM usage of the single modules and the build output.

Kind regards,

Marco Liess


Re: getting started with ssd1306 shield

Erwan Gouriou
 

Hi Trevor,

What is the error reported ?

Erwan

On Tue, 14 Apr 2020 at 16:06, Trevor Clarke <pythonpimp@...> wrote:
I'm new to zephyr and I'm trying to get a 128x32 SSD1306 display working with a stm32 black pill and I'm having trouble.
My prj.conf has CONFIG_DISPLAY=y
My CMakeLists.txt has set(SHIELD ssd1306_128x32) before the boilerplate include.

When configuring I get a "Label or path arduino_i2c not found" so I tried adding "arduino_i2c=&i2c1" to my app overlay file and that didn't help.

Am I missing something in my app code? Or do I need to modify the shield code to accommodate stm32? If so, where would I get started with that?


--
Trevor R.H. Clarke
Computer Science House
Rochester Institute of Technology
retrev@...
http://www.csh.rit.edu/~retrev/


getting started with ssd1306 shield

Trevor Clarke
 

I'm new to zephyr and I'm trying to get a 128x32 SSD1306 display working with a stm32 black pill and I'm having trouble.
My prj.conf has CONFIG_DISPLAY=y
My CMakeLists.txt has set(SHIELD ssd1306_128x32) before the boilerplate include.

When configuring I get a "Label or path arduino_i2c not found" so I tried adding "arduino_i2c=&i2c1" to my app overlay file and that didn't help.

Am I missing something in my app code? Or do I need to modify the shield code to accommodate stm32? If so, where would I get started with that?


--
Trevor R.H. Clarke
Computer Science House
Rochester Institute of Technology
retrev@...
http://www.csh.rit.edu/~retrev/


Re: API meeting: agenda

Carles Cufi
 

Two additional items:

- DAC API proposal
- PR: https://github.com/zephyrproject-rtos/zephyr/pull/21805

- Auth API location
- Issue: https://github.com/zephyrproject-rtos/zephyr/issues/23465

-----Original Message-----
From: devel@lists.zephyrproject.org <devel@lists.zephyrproject.org> On
Behalf Of Cufi, Carles via lists.zephyrproject.org
Sent: 13 April 2020 19:33
To: users@lists.zephyrproject.org; devel@lists.zephyrproject.org
Cc: julien.dascenzio@paratronic.fr; jukka.rissanen@linux.intel.com;
johan.hedberg@intel.com; Andersson, Joakim
<Joakim.Andersson@nordicsemi.no>
Subject: [Zephyr-devel] API meeting: agenda

Hi all,

Tomorrow's topics:

- Proposal to unify the "forever" timeout constant across subsystems
that take milliseconds as an input parameter
- PR: https://github.com/zephyrproject-rtos/zephyr/pull/24267

- RTC API proposal review after comments from the author
- PR: https://github.com/zephyrproject-rtos/zephyr/pull/23526/

Additional items in the "Triage" column in the GitHub project may be
discussed if time permits.
If you want an item included in the meeting, please add it to the GitHub
project.

https://github.com/zephyrproject-rtos/zephyr/wiki/Zephyr-Committee-and-
Working-Group-Meetings#zephyr-api-discussion
https://github.com/zephyrproject-rtos/zephyr/projects/18
https://docs.google.com/document/d/1lv-
8B5QE2m4FjBcvfqAXFIgQfW5oz6306zJ7GIZIWCk/edit

Regards,

Carles


MCP2515 Interrupt #can

turboaffe@...
 

Hello everybody, this is my first post.
I have a problem with the drivers/can/can_mcp2515.c interrupt configuration/the mcp2515 driver implementation.
I would like to send a can message with the can_send function. On my board, a stm32 is connected to the mcp2515.
The message is sent, i see it on the bus via candump, and my logic analyzer shows a falling edge on the mcp2515 interrupt output as soon as the mcp2515 is done with sending.
The OS does not react on that falling edge, and my program is stuck on the blocking can_send function.
I discovered that the whole thing works if i change the interrupt edge configuration/gpio flags as follows in can_mcp2515.c, lines 860 to 862:

From: if (gpio_pin_interrupt_configure(dev_data->int_gpio, dev_cfg->int_pin, GPIO_INT_EDGE_TO_ACTIVE)) { return -EINVAL; }
To: if (gpio_pin_interrupt_configure(dev_data->int_gpio, dev_cfg->int_pin, GPIO_INT_EDGE_TO_INACTIVE)) { return -EINVAL; }

Can somebody point me to somebody who I could discuss this problem with? I am not sure if this is a bug or how it can work on the other boards, like the DF Robot CAN Shield one.

Thank you!


NFC Support #nxp #i2c #nvs

nanjunneo@...
 

Hello guys,

I would like to implement an application with NFC tag reader via NXP PN532 or other NFC controllers, which communicates with board via I2C, is there any suggestion or sample to follow how to start it?

Thanks for kind reply in advance.

Best regards,
Neo


API meeting: agenda

Carles Cufi
 

Hi all,

Tomorrow's topics:

- Proposal to unify the "forever" timeout constant across subsystems that take milliseconds as an input parameter
- PR: https://github.com/zephyrproject-rtos/zephyr/pull/24267

- RTC API proposal review after comments from the author
- PR: https://github.com/zephyrproject-rtos/zephyr/pull/23526/

Additional items in the "Triage" column in the GitHub project may be discussed if time permits.
If you want an item included in the meeting, please add it to the GitHub project.

https://github.com/zephyrproject-rtos/zephyr/wiki/Zephyr-Committee-and-Working-Group-Meetings#zephyr-api-discussion
https://github.com/zephyrproject-rtos/zephyr/projects/18
https://docs.google.com/document/d/1lv-8B5QE2m4FjBcvfqAXFIgQfW5oz6306zJ7GIZIWCk/edit

Regards,

Carles

581 - 600 of 2550