Date   
Re: Python Interpreter for Zephyr

Muhammad Muh <muhammad.muh83@...>
 

Hi Maureen and Jrosenth,

Thank you for your kind response to my question. I have downloaded the Micropython from the given link. Now I have followed the steps given in the Read Me file given in micropython-master/ports/zephyr, I am getting the following errors, request to please help me in resolving this issue. Thank you.

Use make V=1 or set BUILD_VERBOSE in your environment to increase build verbosity.
Warning: FROZEN_DIR is deprecated in favour of FROZEN_MANIFEST
GEN build/genhdr/qstr.i.last
main.c:108:63: error: missing binary operator before token "("
  108 |     #elif defined(CONFIG_FLASH_MAP) && FLASH_AREA_LABEL_EXISTS(storage)
      |                                                               ^
make: *** [../../py/mkrules.mk:89: build/genhdr/qstr.i.last] Error 1
make: *** Deleting file 'build/genhdr/qstr.i.last'

Best Regards




From: Maureen Helm (OSS) <maureen.helm@...>
Sent: Wednesday, July 29, 2020 4:06 AM
To: jrosenth@... <jrosenth@...>; Muhammad Muh <muhammad.muh83@...>
Cc: devel@... <devel@...>
Subject: RE: [Zephyr-devel] Python Interpreter for Zephyr
 

There is already a MicroPython port for Zephyr:

https://github.com/micropython/micropython/tree/master/ports/zephyr

 

From: devel@... <devel@...> On Behalf Of Jack Rosenthal via lists.zephyrproject.org
Sent: Monday, July 27, 2020 10:24 AM
To: Muhammad Muh <muhammad.muh83@...>
Cc: devel@...
Subject: Re: [Zephyr-devel] Python Interpreter for Zephyr

 

You could try porting MicroPython to run on Zephyr if it meets your needs. Note that you're looking at a minimum of ~150KB of extra flash space usage, depending on architecture, which features you enable, etc.

 

On Mon, Jul 27, 2020 at 12:26 AM Muhammad Muh <muhammad.muh83@...> wrote:

Hi,

 

I hope you will be fine and in best of the health. I have a small query. If I want to run Python application on top of Zephyr, does Zephyr has the Python interpreter to run a python based application on top of Zephyr?

 

Please advice. Thank you.

 

Best Regards

 

Dev-Review Meeting Agenda Jul 30

Kumar Gala
 

Here’s the agenda topics for this week:

* Any PR/issues w/dev-review tag [ https://github.com/zephyrproject-rtos/zephyr/labels/dev-review ]

- Add support for Open Supervised Device Protocol (OSDP)
[ https://github.com/zephyrproject-rtos/zephyr/pull/26965 ]

* Any topics anyone else has.

- k

Re: Adding support for Nordic PDM Driver in Devicetree #pdm #driver #nrf52832

Frederik David Damsgaard Popp
 
Edited

Hi Martí

Thank you for your detailed answer! This was a great help

First of all, I won't claim to be an audio expert, so this is purely based on what I have learned the past couple of weeks.
I'm not an audio expert, but are you sure the existing audio codec API
is not right?

As far as I could work out, the audio codec API is purely output, so that won't work for a microphone.
The other option was the dmic driver, which utilizes PDM hardware, but converts it into PCM for the Application, so that won't work either.

Strictly speaking, actual drivers -- as in drivers/subsystem/my_driver.c
files -- are enabled using Kconfig, not devicetree. So
CONFIG_MY_DRIVER=y in Kconfig means "enable my driver," which means
something like "compile my_driver.c."

I think I get it now. The dts must specify whether or not the PDM hardware is available on the given board, and if so, what pins etc.
The Kconfig are used to enable the driver to use for the application, and the CMakeLists includes the correct sources, based on whether the implementation should be either nrfx or some other implementation.

config MY_AUDIO_DRIVER
bool
default $(dt_compat_enabled,$(DT_COMPAT_NORDIC_NRF_PDM))
help
Enable my audio driver.

It looks like someone already prepared the setup for a PDM driver, since the SOC Kconfig defines a HAS_HW_NRF_PDM, which means I could depend on that?
I tried something like this:

config PDM_NRFX
bool "nRF PDM nrfx driver"
default y
depends on HAS_HW_NRF_PDM
        select NRFX_PDM
        help
           Enable support for nrfx Hardware PDM driver for nRF52 MCU series.

Totally based off of the PWM Kconfig, but it should work right?

 

It looks like there is already a dts/bindings/audio/nordic,nrf-pdm.yaml
file, though, so it doesn't seem like you need to define your own
binding. I didn't find any drivers for it in the upstream tree, though.

I took a look at the pwm_nrfx driver, which seems to act as a sort of wrapper for the nrfx_pwm driver in the Nordic HAL module.
I assume that I would have to do something similar, as there already is a pdm driver in the Nordic HAL module?
This way I would take an already implemented PDM driver for Nordic chipsets (such as the nRF52832 on the Nordic Thingy 52), and incorporate it into the Zephyr system.
The remaining thing to do, is then modify the devicetree for the Nordic devices that actually have PDM hardware, so that the driver can be used for these boards.

Again, I'm working this stuff out as I go, and this is the method I found so far, but I think it makes sense.
I would love to hear your (or anyone else with some knowledge on this) input, to make sure I'm on the right path.

Best
Frederik

Re: Python Interpreter for Zephyr

Maureen Helm
 

There is already a MicroPython port for Zephyr:

https://github.com/micropython/micropython/tree/master/ports/zephyr

 

From: devel@... <devel@...> On Behalf Of Jack Rosenthal via lists.zephyrproject.org
Sent: Monday, July 27, 2020 10:24 AM
To: Muhammad Muh <muhammad.muh83@...>
Cc: devel@...
Subject: Re: [Zephyr-devel] Python Interpreter for Zephyr

 

You could try porting MicroPython to run on Zephyr if it meets your needs. Note that you're looking at a minimum of ~150KB of extra flash space usage, depending on architecture, which features you enable, etc.

 

On Mon, Jul 27, 2020 at 12:26 AM Muhammad Muh <muhammad.muh83@...> wrote:

Hi,

 

I hope you will be fine and in best of the health. I have a small query. If I want to run Python application on top of Zephyr, does Zephyr has the Python interpreter to run a python based application on top of Zephyr?

 

Please advice. Thank you.

 

Best Regards

 

Zephyr Project: APIs - Tue, 07/28/2020 4:00pm-5:00pm, Please RSVP #cal-reminder

devel@lists.zephyrproject.org Calendar <devel@...>
 

Reminder: Zephyr Project: APIs

When: Tuesday, 28 July 2020, 4:00pm to 5:00pm, (GMT+00:00) UTC

Where:Microsoft Teams Meeting

An RSVP is requested. Click here to RSVP

Organizer: devel@...

Description:

Meeting decisions/discussions in their respective PRs, tracked here: https://github.com/zephyrproject-rtos/zephyr/projects/18


________________________________________________________________________________
+1 321-558-6518 United States, Orlando (Toll)
Conference ID: 317 990 129#
Local numbers | Reset PIN | Learn more about Teams | Meeting options
 
 
________________________________________________________________________________

API meeting: agenda

Carles Cufi
 

Hi all,

Today's topics:

- Device: Normalize DMA, IPM and UART callbacks signatures including the caller's device pointer (should be quick, PRs are already approved and email sent to the mailing lists)
- Issue: https://github.com/zephyrproject-rtos/zephyr/issues/26923
- PR: https://github.com/zephyrproject-rtos/zephyr/pull/26426
- PR: https://github.com/zephyrproject-rtos/zephyr/pull/26780
- PR: https://github.com/zephyrproject-rtos/zephyr/pull/26781

- Device: Const-ify device driver instances
- PR: https://github.com/zephyrproject-rtos/zephyr/pull/24873

- Go through the current set of issues in the project and clean up/organize them

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.

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: Python Interpreter for Zephyr

Jack Rosenthal
 

You could try porting MicroPython to run on Zephyr if it meets your needs. Note that you're looking at a minimum of ~150KB of extra flash space usage, depending on architecture, which features you enable, etc.


On Mon, Jul 27, 2020 at 12:26 AM Muhammad Muh <muhammad.muh83@...> wrote:
Hi,

I hope you will be fine and in best of the health. I have a small query. If I want to run Python application on top of Zephyr, does Zephyr has the Python interpreter to run a python based application on top of Zephyr?

Please advice. Thank you.

Best Regards

Python Interpreter for Zephyr

Muhammad Muh <muhammad.muh83@...>
 

Hi,

I hope you will be fine and in best of the health. I have a small query. If I want to run Python application on top of Zephyr, does Zephyr has the Python interpreter to run a python based application on top of Zephyr?

Please advice. Thank you.

Best Regards

[Bluetooth] How to use "bt adv-create" at \zephyr\tests\bluetooth\shell #bluetooth #nrf52840 #shell

renkai@...
 

Hello,

I'm use the sample code at \zephyr\tests\bluetooth\shell\  and the HW platform is nrf52840dk, what I'm trying to do is to make HW send ADV_EXT_IND and AUX_ADV_IND. After flashing the firmware into HW, I use below shell command to create an adv. 

uart:~$ bt init
Bluetooth initialized
uart:~$ bt[00:03:40.138,793] <inf> fs_nvs: 8 Sectors of 4096 bytes
[00:03:40.138,824] <inf> fs_nvs: alloc wra: 0, ff0
[00:03:40.138,824] <inf> fs_nvs: data wra: 0, 0
[00:03:40.141,601] <inf> bt_hci_core: HW Platform: Nordic Semiconductor (0x0002)
[00:03:40.141,632] <inf> bt_hci_core: HW Variant: nRF52x (0x0002)
[00:03:40.141,632] <inf> bt_hci_core: Firmware: Standard Bluetooth controller (0x00) Version 2.3 Build 0
[00:03:40.142,242] <inf> bt_hci_core: No ID address. App must call settings_load()
[00:03:40.161,285] <inf> bt_hci_core: Identity: d0:d3:8a:6f:47:91 (random)
[00:03:40.161,285] <inf> bt_hci_core: HCI: version 5.2 (0x0b) revision 0x0000, manufacturer 0x05f1
[00:03:40.161,285] <inf> bt_hci_core: LMP: version 5.2 (0x0b) subver 0xffff
uart:~$ bt id-show
*0: d0:d3:8a:6f:47:91 (random)
uart:~$ bt id-select 0
Selected identity: d0:d3:8a:6f:47:91 (random)
uart:~$ bt adv-create conn-scan ext-adv identity low
Failed to create advertiser set (-5)
[00:04:29.615,020] <wrn> bt_hci_core: opcode 0x2036 status 0x01

But the return error code is -5, how can I create an adv and make it send ADV_EXT_IND and AUX_ADV_IND? 
Thanks. 

Regards,
Kai

Re: Sharing a driver between similar devices

William Fish
 

Michael,
Some interesting thoughts but it might be worth having a look at the lsm9ds0_mfd driver, it has configuration options for the various sensor functions. This might be a good guide to help achieve what you're planning.

Billy..

Re: Sharing a driver between similar devices

Peter A. Bigot
 

I believe https://github.com/zephyrproject-rtos/zephyr/issues/20287 is relevant to this problem.   At the time there was no solution; now it may be that 
DT_NODE_HAS_COMPAT(DT_DRV_INST(N), other_compat) handles it if just you iterate over the base lsm6dsl device.

Re: Sharing a driver between similar devices

Michael Hope
 

On Fri, 24 Jul 2020 at 22:06, Bolivar, Marti <Marti.Bolivar@...> wrote:
Hi Michael,

"Michael Hope via lists.zephyrproject.org"
<michaelh=juju.nz@...> writes:

> Hi there.  I'm porting Zephyr to the Arduino Nano 33 IOT.  The board has a
> LSM6DS3 IMU which is very similar to the LSM6DSL that's already supported
> by Zephyr and I'd like to re-use it.
>
> I've refactored [1] the lsm6dsl driver to be multi-instance.  What's the
> best way of then using the same driver for two different compats?  The best
> I've come up with is [2] but that has name collision issues.

Have you tried to set some state in the config structure based on the
value of DT_NODE_HAS_COMPAT(DT_DRV_INST(your_instance_number), some_compat)?

That sounds good.

The second part of the problem is iterating over both the lsm6dsl and lsm6ds3 types.  Doing two DT_INST_FOREACH_STATUS_OKAY(fn), one for each compat, can give name collisions.  Any ideas?

-- Michael


>
> Note that the chips also have a different WHO_AM_I value, so need very
> slightly different configuration.

E.g. setting the WHO_AM_I in your config struct based on this, and using
that in your init functions to disambiguate.

>
> [1]: https://github.com/zephyrproject-rtos/zephyr/pull/27064
> [2]:
> https://github.com/zephyrproject-rtos/zephyr/commit/cd65c39b3eeaa0d21ba90c30b13e4ca2952a6723
>
> -- Michael

Thanks,
Martí

>
>

Re: Sharing a driver between similar devices

Bolivar, Marti
 

Hi Michael,

"Michael Hope via lists.zephyrproject.org"
<michaelh=juju.nz@...> writes:

Hi there. I'm porting Zephyr to the Arduino Nano 33 IOT. The board has a
LSM6DS3 IMU which is very similar to the LSM6DSL that's already supported
by Zephyr and I'd like to re-use it.

I've refactored [1] the lsm6dsl driver to be multi-instance. What's the
best way of then using the same driver for two different compats? The best
I've come up with is [2] but that has name collision issues.
Have you tried to set some state in the config structure based on the
value of DT_NODE_HAS_COMPAT(DT_DRV_INST(your_instance_number), some_compat)?


Note that the chips also have a different WHO_AM_I value, so need very
slightly different configuration.
E.g. setting the WHO_AM_I in your config struct based on this, and using
that in your init functions to disambiguate.


[1]: https://github.com/zephyrproject-rtos/zephyr/pull/27064
[2]:
https://github.com/zephyrproject-rtos/zephyr/commit/cd65c39b3eeaa0d21ba90c30b13e4ca2952a6723

-- Michael
Thanks,
Martí


Sharing a driver between similar devices

Michael Hope
 

Hi there.  I'm porting Zephyr to the Arduino Nano 33 IOT.  The board has a LSM6DS3 IMU which is very similar to the LSM6DSL that's already supported by Zephyr and I'd like to re-use it.

I've refactored [1] the lsm6dsl driver to be multi-instance.  What's the best way of then using the same driver for two different compats?  The best I've come up with is [2] but that has name collision issues.

Note that the chips also have a different WHO_AM_I value, so need very slightly different configuration.


-- Michael

github org membership and permissions

Maureen Helm
 

Hi everyone,

This week the TSC approved the list of current maintainers in #24152. As a result, I have invited all of the approved maintainers to join the zephyrproject-rtos GitHub organization and assigned them into a “maintainers” team. Membership in this GitHub team gives write access to the main zephyr repo, which is used for assigning labels and reviewers to issues/PRs. Merge rights are still restricted to members of the release team.

 

Many maintainers previously had write access as an “outside collaborator”, which should no longer be necessary and has been removed. If you have lost access to the repo in this refactoring, then I have made a mistake and please let me know.

 

Also, membership in a GitHub organization is by default private, but you have the option to make it public:

https://docs.github.com/en/github/setting-up-and-managing-your-github-user-account/publicizing-or-hiding-organization-membership

 

Maureen

Zephyr Project: Dev Meeting - Thu, 07/23/2020 3:00pm-4:00pm, Please RSVP #cal-reminder

devel@lists.zephyrproject.org Calendar <devel@...>
 

Reminder: Zephyr Project: Dev Meeting

When: Thursday, 23 July 2020, 3:00pm to 4:00pm, (GMT+00:00) UTC

Where:Microsoft Teams Meeting

An RSVP is requested. Click here to RSVP

Organizer: devel@...

Description:

________________________________________________________________________________
+1 321-558-6518 United States, Orlando (Toll)
Conference ID: 483 314 739#
Local numbers | Reset PIN | Learn more about Teams | Meeting options
 
 
________________________________________________________________________________

Dev-Review Meeting Agenda Jul 23

Kumar Gala
 

Here’s the agenda topics for this week:

* Discussion on CONFIG_MULTITHREADING=n
- Do we continue to support it and what functionality should be expected to work in that mode:
https://github.com/zephyrproject-rtos/zephyr/issues/9808
https://github.com/zephyrproject-rtos/zephyr/issues/8393
https://github.com/zephyrproject-rtos/zephyr/issues/26796
https://github.com/zephyrproject-rtos/zephyr/issues/8496



https://github.com/zephyrproject-rtos/zephyr/issues?q=is%3Aissue+is%3Aopen+CONFIG_MULTITHREADING
- isr safe mutexes


* Any PR/issues w/dev-review tag
* Any topics anyone else has.

- k

Re: [Zephyr-users] Community input on possible change to Discord from Slack

Jack Rosenthal
 

I use Matrix on other channels. It works pretty nicely, and the open source factor is a bonus.

Reto summed it up pretty well... hope you all do consider it a bit more.

On Wed, Jul 22, 2020 at 8:26 AM <rs@...> wrote:
Hi Kumar,

Being a Matrix homeserver administrator myself (Synapse/Riot-Web), but
never having used Discord, I'd like to know what (apart form Adafruit)
made Discord look like the most interesting candidate?

On 7/17/20 12:27 AM, Kumar Gala wrote:
> Some requirements for Zephyr chat platform:
> * Maintain history
Can not see a problem with this.

> * integration with other services (like GitHub)

Never done this, can not say anything about it.

> * private channels

Possible - including E2E encryption

> * ideally free - or low cost
> * no overhead for Zephyr Project (ie not having to run our own server).

What would be considered low cost?

Would a server maintained paid by the LF and run by a volunteer be an
option?

> Pros of Discord:
> * Shared accounts across "servers" which are really just communities. Makes joining a new server very fast and easy.

Same for Matrix, but solved via federation

> * Strong moderation tools (mute, ban, kick) per server. No need to wait for Discord to help.

I had no need yet on my homeserver (~150 accounts), but mute/kick/ban is
not a problem at all. Also, redacting history of a spammer, etc. is very
possible.

> * Unlimited history for free.

Possible

> * Easy to join via invite link, chat and then establish an account.

I have not tried to enable guest accounts yet, but ...
a) it is very easy to set up a homeserver to allow registering with just
a username and a password, not requiring an e-mail or phone number.
b) People can just re-use their existing Matrix accounts if federation
is enabled

> Cons of Discord:
> * Can get spammy when publicly listed.

For matrix, sharing the room list with other homeservers can be prevented.

> * Still in the startup phase so they are experimenting with business models. Currently "Nitro" subscription which unlocks server capabilities: https://discord.com/new/nitro
> * Closed source so interop with Matrix and IRC is tricky but doable.

Matrix.org does already IRC bridging for its own *and* users on other
homeservers [1].

Also, the speed at which Synapse/Element/etc. is getting developed is
awesome. There are releases pretty much every week, each containing
serious improvements.

Greetings,
Reto

[1]
https://matrix.org/blog/2015/06/22/the-matrix-org-irc-bridge-now-bridges-all-of-freenode




Re: [Zephyr-users] Community input on possible change to Discord from Slack

rs@...
 

Hi Kumar,

Being a Matrix homeserver administrator myself (Synapse/Riot-Web), but
never having used Discord, I'd like to know what (apart form Adafruit)
made Discord look like the most interesting candidate?

On 7/17/20 12:27 AM, Kumar Gala wrote:
Some requirements for Zephyr chat platform:
* Maintain history
Can not see a problem with this.

* integration with other services (like GitHub)
Never done this, can not say anything about it.

* private channels
Possible - including E2E encryption

* ideally free - or low cost
* no overhead for Zephyr Project (ie not having to run our own server).
What would be considered low cost?

Would a server maintained paid by the LF and run by a volunteer be an
option?

Pros of Discord:
* Shared accounts across "servers" which are really just communities. Makes joining a new server very fast and easy.
Same for Matrix, but solved via federation

* Strong moderation tools (mute, ban, kick) per server. No need to wait for Discord to help.
I had no need yet on my homeserver (~150 accounts), but mute/kick/ban is
not a problem at all. Also, redacting history of a spammer, etc. is very
possible.

* Unlimited history for free.
Possible

* Easy to join via invite link, chat and then establish an account.
I have not tried to enable guest accounts yet, but ...
a) it is very easy to set up a homeserver to allow registering with just
a username and a password, not requiring an e-mail or phone number.
b) People can just re-use their existing Matrix accounts if federation
is enabled

Cons of Discord:
* Can get spammy when publicly listed.
For matrix, sharing the room list with other homeservers can be prevented.

* Still in the startup phase so they are experimenting with business models. Currently "Nitro" subscription which unlocks server capabilities: https://discord.com/new/nitro
* Closed source so interop with Matrix and IRC is tricky but doable.
Matrix.org does already IRC bridging for its own *and* users on other
homeservers [1].

Also, the speed at which Synapse/Element/etc. is getting developed is
awesome. There are releases pretty much every week, each containing
serious improvements.

Greetings,
Reto

[1]
https://matrix.org/blog/2015/06/22/the-matrix-org-irc-bridge-now-bridges-all-of-freenode

Re: Community input on possible change to Discord from Slack

Paul Sokolovsky
 

Hello,

On Tue, 21 Jul 2020 23:55:18 +0000
"Nashif, Anas" <anas.nashif@...> wrote:

It depends who you ask, lots of people actually do not care or like
threads the way they are implemented in Slack. This is basically a
place where conversation just get buried.
+2, one for each account. I find the threads hard to use/follow in
realtime, and apparently very hard to get back to in archive if you
don't know a precise search term.

IRC did not have threads,
yet it is still there after almost 30 years.
+1 for mentioning IRC too. After trying Slack, I personally find IRC
more comfortable. I actually came to appreciate its liteweight design
as very smart and deliberate, emphasizing the core feature - quick
chat, and leaving the rest to more tangible communication methods, like
email.


Anas
[]

--
Best Regards,
Paul

Linaro.org | Open source software for ARM SoCs
Follow Linaro: http://www.facebook.com/pages/Linaro
http://twitter.com/#!/linaroorg - http://www.linaro.org/linaro-blog