Re: Divide zephyr into libraries
#west
Lukasz Iwaszkiewicz <lukasz.iwaszkiewicz@...>
Hi
toggle quoted messageShow quoted text
Isn't `ninja menuconfig` what you are looking after? Link : https://docs.zephyrproject.org/latest/guides/kconfig/menuconfig.html?highlight=menuconfig . Regards
On Tue, Jan 19, 2021 at 11:32 AM Nikos Karamolegkos <nkaram@ics.forth.gr> wrote:
|
|
Re: Divide zephyr into libraries
#west
Nikos Karamolegkos
Guys any extra information about this. It will really helps. Thank you
On 12/1/21 4:23 μ.μ., Nikos
Karamolegkos wrote:
Hello and Happy new year to everyone, I am working in project with target to use zephyr as base of any freestanding application. Specifically, I would like the developer to have the ability to choose the desired sub-modules (e.g from subsys folder), after creating a new application. For example, a developer can create a hello-world application and then to choose that is interested to use bluetooth or net functionalities (think it like inserting new libraries to the projects). Any ideas on how to implement that? I have seen the cmake files in the app directory (e.g hello world) which are really simple. Should I make this process through proj.conf file (and/or the overlay conf files) by setting the appropriate configs? (e.g CONFIG_BT, CONFIG_NET_BUF, etc)? -- Nikos Karamolegkos R & D engineer at ICS-FORTH Telecommunications and Networks Lab (TNL)
|
|
True Random Number Generator
#crypto
Mohamed Belaroussi
Hello, I am using a third party chriptographic engine that provides a dedicated hardware accelerator for AES-128 encryption based algorithms. I am using this engine to encrypt and decrypt the data transmitted and received over RF. To make the data more secure I am looking at generating encryption 128-bits keys using a True Random Number Generator. Is there a way of achieving a true random number generation using nRF5340 with Zephyr?
|
|
Re: Embedded Border-Router - Route Thread-Protocol to Serialbus
Becker Markus
Hi.
> **Creating an Embedded Border-Router for Thread**
Currently there is support for the NCP as well as the RCP configuration of an OpenThread BR within Zephyr (https://openthread.io/platforms/co-processor) next to the router/end-device device types.
NCP as well as RCP already use UART (or SPI) as a lower layer to send IP messages to an application processor. Zephyr’s OpenThread UART adaptation is at https://github.com/zephyrproject-rtos/zephyr/blob/master/subsys/net/lib/openthread/platform/uart.c.
If you run the host-side BR tools also on the micro-controller, this would make a very cost-efficient BR, but also a more restricted one. E.g. it will be harder to do firewalling, routing, service discovery, and WebUI things. It is definitely possible. If you work on this, let the mailing list know.
> **Additional processors on a serial bus**
From the figure and the description, it seems that you want to use the serial link as a thread link. This is similar to the TREL feature Jonathan pointed out on the openthread mailing list. TREL is there to use Ethernet as a Thread link. Note that TREL is not (yet) included within OpenThread on Zephyr.
BR, Markus
From: users@... <users@...>
On Behalf Of Liechtenecker Heinz-Peter Ulrich via lists.zephyrproject.org
Sent: Samstag, 16. Jänner 2021 18:13 To: users@... Subject: [Zephyr-users] Embedded Border-Router - Route Thread-Protocol to Serialbus
Hi, I am currently investigating Zephyr and Thread for various use cases and I did a lot of research, but there are still a lot of open questions left. I tried to avoid opening an issue, but I am quite unsure. where to ask my questions. So, before I deep-dive into the Zephyr world, some advice and hints would be nice to have.
**Creating an Embedded Border-Router for Thread** As far as I understood, Zephyr uses OpenThread under the hood. Users can take advantage of the common Zephyr Networking API - they do not directly interact with the L2 layer (where OpenThread is actually hidden). So, Thread defines several roles - one is the Border Role. The Zephyr-Documentation states that I can activate multiple Network Interfaces at the same time, however, no automatic IP routing is done. So, it should be no great problem to implement a Thread Border router?
So far so good, for my specific needs I would like to implement a Border-Router based on e.g. Lairds Pinnacle 100. So, the Border-Router I am thinking about would be running Zephyr which would perform routing between Thread and the Modem (in an industrial environment, so I do not expect users to manually add devices, they may be pre-configured - so no HTML server etc. is necessary).
- Which steps would I have to take to implement such an embedded border router? And is this even a good idea? Maybe some experts do have some advice. (I have seen that there are some commits in the latest OpenThreads commits addressing Border-Routing and Backbone-Routing - so maybe it would. be an idea to use OpenThreads routing capabilities?) - How do I set the corresponding Thread-Role for my device? (Router, Border-Route, End-Device...) - What about https://github.com/zephyrproject-rtos/zephyr/issues/3861 ? Which features shall be available through this management interface?
Zephyr greatly abstracts all network-related features, at the same time it makes using OpenThread somehow intransparent….
**Additional processors on a serial bus** I really do like the idea of a transparent IPv6 based network down to each device/processor. My specific hardware may consist of several (and optional) processors - connected to e.g. a Nordic device using a serial bus. Each processor runs zephyr and hence has its own OpenThread Stack. However, the processors connected via serial act as **end devices** while the Nordic acts as a **router**. The router bridges messages to the serial bus and the radio at the same time. The following figure hopefully clarifies the topology: If I get this to work, it would allow me to send e.g. FOTA updates to each processor without any additional protocol etc. - I am not sure if this question is more related to OpenThread or Zephyr. I would like to know if something similar has already been tested/implemented and if so, where to start? I think one would have to add an additional interfaces to OpenThread - so the Router would have to track where to send packages to. Maybe an expert has some better ideas to accomplish such a topology without adding a lot of additional protocols?
I did also ask the question in the OpenThread [mailing list](https://groups.google.com/g/openthread-users/c/RwYZJS2_IfQ/m/S2qNRaQwBwAJ) - so it would be a good idea to focus on the Zephyr part of the question. The contents of this e-mail and any attachments are confidential to the intended recipient. They may not be disclosed to or used by or copied in any way by anyone other than the intended recipient. If this e-mail is received in error, please immediately notify the sender and delete the e-mail and attached documents. Please note that neither the sender nor the sender's company accept any responsibility for viruses and it is your responsibility to scan or otherwise check this e-mail and any attachments.
|
|
Embedded Border-Router - Route Thread-Protocol to Serialbus
Liechtenecker Heinz-Peter Ulrich <H.Liechtenecker@...>
Hi,
I am currently investigating Zephyr and Thread for various use cases and I did a lot of research, but there are still a lot of open questions left. I tried to avoid opening an issue, but I am quite unsure. where to ask my questions. So, before
I deep-dive into the Zephyr world, some advice and hints would be nice to have.
**Creating an Embedded Border-Router for Thread**
As far as I understood, Zephyr uses OpenThread under the hood. Users can take advantage of the common Zephyr Networking API - they do not directly interact with the L2 layer (where OpenThread is actually hidden). So, Thread defines several roles
- one is the Border Role. The Zephyr-Documentation states that I can activate multiple Network Interfaces at the same time, however, no automatic IP routing is done. So, it should be no great problem to implement a Thread Border router?
So far so good, for my specific needs I would like to implement a Border-Router based on e.g. Lairds Pinnacle 100. So, the Border-Router I am thinking about would be running Zephyr which would perform routing between Thread and the Modem (in an
industrial environment, so I do not expect users to manually add devices, they may be pre-configured - so no HTML server etc. is necessary).
- Which steps would I have to take to implement such an embedded border router? And is this even a good idea? Maybe some experts do have some advice. (I have seen that there are some commits in the latest OpenThreads commits addressing Border-Routing
and Backbone-Routing - so maybe it would. be an idea to use OpenThreads routing capabilities?)
- How do I set the corresponding Thread-Role for my device? (Router, Border-Route, End-Device...)
- What about
https://github.com/zephyrproject-rtos/zephyr/issues/3861 ? Which features shall be available through this management interface?
Zephyr greatly abstracts all network-related features, at the same time it makes using OpenThread somehow intransparent….
**Additional processors on a serial bus**
I really do like the idea of a transparent IPv6 based network down to each device/processor. My specific hardware may consist of several (and optional) processors - connected to e.g. a Nordic device using a serial bus. Each processor runs zephyr
and hence has its own OpenThread Stack. However, the processors connected via serial act as **end devices** while the Nordic acts as a **router**. The router bridges messages to the serial bus and the radio at the same time. The following figure hopefully
clarifies the topology:
If I get this to work, it would allow me to send e.g. FOTA updates to each processor without any additional protocol etc. - I am not sure if this question is more related to OpenThread or Zephyr. I would like to know if something similar has already
been tested/implemented and if so, where to start? I think one would have to add an additional interfaces to OpenThread - so the Router would have to track where to send packages to. Maybe an expert has some better ideas to accomplish such a topology without
adding a lot of additional protocols?
I did also ask the question in the OpenThread [mailing list](https://groups.google.com/g/openthread-users/c/RwYZJS2_IfQ/m/S2qNRaQwBwAJ) - so it would
be a good idea to focus on the Zephyr part of the question.
|
|
Erwan Gouriou
Hi Michael, When available, peripheral drivers of one SoC series should work with all boards using SoC of this series. Peripheral configuration is not done systematically on all the boards, as it requires time and having the boards to test the change. To get a peripheral driver working on a board, it only requires to configure the board dts file: enable matching node and configure pinctrl. In most cases you would not need to touch the Kconfig configuration: CONFIG_CAN will be set by application and thanks to Kconfig mechanisms, requested STM32_CAN config will be enabled. HIH Erwan
On Fri, 15 Jan 2021 at 02:52, <schmid.enterprise@...> wrote: Dear all,
|
|
schmid.enterprise@...
Dear all,
I am new to Zephyr, I would like to use it on a STM32 for a Ethernet-to-CAN converter. While looking on the list of supported boards, and the supported feature, I can not find a single STM32 board what is listed to support both interfaces. Ether is only CAN supported, or Ethernet. The only board what is listed to support both is the K64. Now I wonder, why for several STM32 boards CAN is listed, but for others of the same chip family is not. For example, the waveshare_open103z, stm32f3_disco, stm32f4_disco, nucleo_l432, nucleo_l433, nucleo_l452 and black_f407 are listed to support CAN, but other STM32 boards with F1xx, F3xx, F4xx L4xx not show support of CAN. As is understand, the IP of the CAN inferface is the same on all F1, for example. So all boards with an F1xx mcu should have an identical MCU interface, from software point of view. I understand, that not all boards have a CAN driver chip, as such difficult to test the CAN feature on a stock Nucleo or disco board. How difficult is it, to make CAN working on a STM32 board, what not explicit shows CAN as supported on the Zephyr documentation, but have a sibling what is listed as support CAN? For example, make CAN working on a STM32F412 board (the STM32F407 support CAN). Is it just enable the SM32_CAN in the configuration and then recompile? Or are there bigger problems to expect? The same goes for other features like DAC, ADC, ect. Best regards, Michael
|
|
Hello.
I'm newbie with Zephyr OS. I've started with 2.4.99 version I would like to connect mx35 2 Gb Nand flash to stm32f413 microcontroller via spi. I've found spi_nor driver in zephyr/drivers/flash but haven't found any sources for nand Can you tell me, which driver should I use for nand flash? Thank you
|
|
printf causes hard_fault
#nrf52840
Stefan Hristozov
I have an application for the nrf52840dk_nrf52840 board where I am using printf() to print some messages.
All works most of the time and the messages are shown correctly on my serial console. However, at some point when I call again printf() my application crushes. Any ideas? Is it possible that some buffer is too small or something like that? Attached is a screenshot of the call stack. Br, Stefan
|
|
Divide zephyr into libraries
#west
Nikos Karamolegkos
Hello and Happy new year to everyone, I am working in project with target to use zephyr as base of any freestanding application. Specifically, I would like the developer to have the ability to choose the desired sub-modules (e.g from subsys folder), after creating a new application. For example, a developer can create a hello-world application and then to choose that is interested to use bluetooth or net functionalities (think it like inserting new libraries to the projects). Any ideas on how to implement that? I have seen the cmake files in the app directory (e.g hello world) which are really simple. Should I make this process through proj.conf file (and/or the overlay conf files) by setting the appropriate configs? (e.g CONFIG_BT, CONFIG_NET_BUF, etc)?
|
|
API meeting: agenda
Carles Cufi
- drivers: pwm: add functions for capturing pwm pulse width and period
- PR: https://github.com/zephyrproject-rtos/zephyr/pull/26025 - Naming conventions - PR: https://github.com/zephyrproject-rtos/zephyr/pull/30892 - UART API - PR (merged): https://github.com/zephyrproject-rtos/zephyr/pull/31192 - zauth (now auth) authentication library - PR: https://github.com/zephyrproject-rtos/zephyr/pull/31136 If you have additional items please let me know. Teams link: https://teams.microsoft.com/l/meetup-join/19%3ameeting_NWU2MjZlYWEtZDcwMi00MWQzLTgwMjEtNDdkYjQwMjBjMmFj%40thread.v2/0?context=%7b%22Tid%22%3a%22af0096d9-700c-411a-b795-b3dd7122bad2%22%2c%22Oid%22%3a%22841a7c92-7816-4faf-9887-5e334e88f6d8%22%7d 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: Bluetooth AND USB support?
Erwan Gouriou
Hi Uwe, Looking at the board device tree description, USB is actually supported on this board: &usb { status = "okay"; pinctrl-0 = <&usb_dm_pa11 &usb_dp_pa12>; }; I'll update the doc to reflect this state. BR Erwan
On Thu, 7 Jan 2021 at 18:08, Uwe Fechner <uwe.fechner.msc@...> wrote: Hello,
|
|
Re: Newbie question: K64F with SD card
Henrik Brix Andersen
Hi Dave,
toggle quoted messageShow quoted text
I take it you mean the Freedom K64F board? It is correct that the SD card controller of the K64F is not yet supported by Zephyr. There is an open issue regarding this: https://github.com/zephyrproject-rtos/zephyr/issues/19243 The internal DAC is supported by the Zephyr DAC API: https://docs.zephyrproject.org/latest/reference/peripherals/dac.html Regards, Brix -- Henrik Brix Andersen
On 3 Jan 2021, at 02.10, Dave Nadler <drn@nadler.com> wrote:
|
|
Re: Bluetooth AND USB support?
Carles Cufi
Hi Uwe,
toggle quoted messageShow quoted text
The nRF52840 and the nRF5340 ICs from Nordic support both USB and Bluetooth. There are several boards based on those supported by Zephyr. Carles
-----Original Message-----
|
|
Bluetooth AND USB support?
Uwe Fechner
Hello,
I am looking for a chip/ board that has Bluetooth AND USB which is supported by Zephyr. For example, the STM32WB55RG offers USB and Bluetooth, but it looks as if Zephyr does NOT support the USB part yet. See: https://docs.zephyrproject.org/latest/boards/arm/nucleo_wb55rg/doc/nucleo_wb55rg.html Is my impression correct? Would it be difficult/ time consuming to make USB work? Is there any other chip/board where Zephyr supports both? Uwe
|
|
Re: CMake Sibling Shared Project Question
Bolivar, Marti
Hi,
"Steven Ghekiere via lists.zephyrproject.org" <steven.ghekiere=student.kuleuven.be@lists.zephyrproject.org> writes: ?Hi!The location of the zephyr repository is available to CMake in the ZEPHYR_BASE variable.
|
|
CMake Sibling Shared Project Question
Steven Ghekiere <steven.ghekiere@...>
Hi!
I'm developing a project with both a central device and end devices.
Since both projects use a lot of the same functions I've used, it would be beneficial if they could use the same files.
The structure I had in mind: . - modules - tools - zephyr - my_applications - central -main.c -CMakeLists.txt -end -main.c -CMakeLists.txt -shared -lib1.c -lib1.h -CMakeLists.txt
I've been struggling quite a bit, I've tried several examples from searching the web. My main problem is the shared library unable to find the Zephyr repository.
If needed I'd be happy to send you the current versions of the CMakeLists, but they're quite bare basics so I don't know if they're of any use. If there is an easier or better solution to this, feel free to comment :)
Thanks in advance,
Steven
|
|
Re: [Zephyr-devel] API meeting: Agenda
Carles Cufi
Hi Steven,
Your PRs do not modify existing APIs or add any new ones, from what I can tell after a quick look. You can either wait for reviews, or bring those up at the dev-review meeting on Thursday.
Check this link for a full meeting schedule: https://lists.zephyrproject.org/calendar
Carles
From: Steven Riedl <steve@...>
Sent: 05 January 2021 16:52 To: Cufi, Carles <Carles.Cufi@...> Cc: devel@...; users@... Subject: Re: [Zephyr-devel] API meeting: Agenda
Question?
Would my two driver addition PR be in this meeting? If not could you direct me to the appropriate call/place?
drivers: sensor: mcp9600: Added driver and sample for mcp9600 area: Documentation area: Samples #31082 opened 2 days ago by riedlse • Review required drivers: sensor: lm73c: Added TI LM73C sensor driver area: Documentation area: Samples #31064 opened 5 days ago by riedlse • Review required
-- Steven Riedl (404) 205-9487 Skype: sriedl
"so you have a vested interest in maintaining the inefficient status quo" G. Niemeijer
|
|
Re: [Zephyr-devel] API meeting: Agenda
Steven Riedl <steve@...>
Question?
toggle quoted messageShow quoted text
Would my two driver addition PR be in this meeting? If not could you direct me to the appropriate call/place?
--
Steven Riedl
(404) 205-9487
Skype: sriedl
"so you have a vested interest in maintaining the inefficient status quo" G. Niemeijer
|
|
Re: API meeting: Agenda
Carles Cufi
One extra item to the agenda:
toggle quoted messageShow quoted text
- drivers: eeprom: mark the EEPROM API as stable - PR: https://github.com/zephyrproject-rtos/zephyr/pull/31076
-----Original Message-----
|
|